/* Override CSS START */
.align_middle { vertical-align: middle; }
.table_cell { display: table-cell; }
.border_purple { border: 1px solid #E24091; }
.max_width_200 { max-width: 200px; }
.img_100 { width: 100px; height: 100px; }

.page_introduction_center { margin: 30px 0; }
.page_introduction_center p { margin: 0px auto; }
.page_introduction .title.news_title { font-size: 56px; }

.main_content {
  padding-right: 45px;
  min-width: 400px;
}

.content_image {
  width: 391px;
  height: 289px;
}
.title_img { height: 100px; }

@media screen and (max-width: 992px){
  .main_content {
    padding-right: 30px;
    min-width: 10px;
  }
  .main_content {
    padding: 0 10px;
  }
}
@media screen and (max-width: 768px){
  .main_content {
    flex: 0 0 auto;
  }
}
@media screen and (max-width: 576px){
  .page_introduction .title.news_title { font-size: 46px; }
}
/* Override CSS END */

/* Button START */
.main_btn { margin: 5rem 0; }
.btn_padding { padding: 15px 50px; }
.btn_booking { background: #ffffff; }

.btn_group {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
.btn_group button { margin: 0 10px; }
@media screen and (max-width:992px) {
  .btn_group button {
    width: 100%;
    margin: 5px 0;
  }
}
/* Button EMD */

/* Box Confirm START */
.box_confirm + .box_confirm{ margin: 20px 0 0; }
.box_confirm { padding: 15px 0px; }
.box_confirm .confirm_info { padding: 0 0 8px 15px; }
.box_confirm .col_user_item { min-width: 130px; }
.box_confirm .two_dot { min-width: 30px; }
.box_confirm .col_user_info { min-width: 320px; }
.box_confirm .btn_update { padding: 0px; }

@media screen and (max-width: 768px){
  .box_confirm { padding: 0; }
}
/* Box Confirm END */

/* Payment START */
.payment_regular {
  position: relative;
  border: 1px solid #EAE1EA;
  background-size: 100% 100%;
  padding: 15px;
}
.payment_regular.selected { border-color: #E24091; }
.payment_regular .monthly_money {
  font-family: 'hiragino-sans-gb-w6';
  font-size: 12px;
  padding: 2px 10px;
  color: #ffffff;
  background: #E24091;
  border-radius: 3px;
  margin: 0 10px;
}
.payment_regular .description {
  margin-top: 10px;
  padding-left: 30px;
  font-size: 12px;
}
.payment_other {
  margin: 25px 0px;
  font-size: 16px;
}

.payment_other .note{
  text-decoration: underline;
  font: 500 12px '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic' ,sans-serif;
  color: rgba(0, 0, 0, 0.76);
}

.payment_other .checkbox_label.disabled{
  color: rgba(0, 0, 0, 0.34);
}

.payment_other .credit_card{
  max-width: 800px;
  background-color: #F8F8F8;
  margin-left: 30px;
  padding: 30px;
}

.payment_other .credit_card .checkbox_item{
  align-items: flex-start;
}
.payment_other .credit_card .info{
  margin-bottom: 20px;
}
.payment_other .credit_card .info > span{
    font: 500 15px '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic' ,sans-serif;
    padding-left: 50px;
}
.payment_other .credit_card .number_payment > span{
  font: 500 13px '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic' ,sans-serif;
}
.payment_other .credit_card .number_payment > select{
  width: 200px;
  margin-left: 30px;
  background-color: #fff;
}
.payment_other .card2 .label{
  font: 500 13px '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic' ,sans-serif;
}
.payment_other .card2 input,.payment_other .card2 select{
  background-color: #fff;
}
.payment_other .card2 ::placeholder{
  font: 500 16px '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic' ,sans-serif;
  color: rgba(0, 0, 0, 0.33);
}
.payment_other .card2 .jcbimage{
  flex: 0 0 28px;
  width: 28px;
  height: 22px;
  margin-right: 10px;
}
.payment_other .card2 .visaimage{
  flex: 0 0 46px;
  width: 46px;
  height: 16px;
  margin-right: 10px;
  margin-top: 3px;
}
@media screen and (max-width: 576px){
  .payment_other .credit_card{
    margin-left: 0;
    padding: 20px;
  }
  .payment_other .credit_card .ml_4{
    margin: 0;
  }
}
/* Payment END */

/* Choice Box START */
.choice_box { margin-bottom: 20px; }
.choice_box .image {
  width: 220px;
  height: 171px;
}
.choice_box .item_choice {
  border: 1px solid #F2EFF2;
  width: 220px;
}
.choice_box .item_choice_detail {
  margin: 15px 0px;
  padding: 0px 15px;
}
.choice_box .money_info {
  margin: 10px 0px 0px 0px;
  padding: 10px 15px;
  background: #F9F7FA;
}

@media screen and (max-width: 768px){
  .choice_box .item_choice{
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    margin: 50px 0 0;
  }
  .choice_box .money_info{
    width: 100%;
    margin: 0;
  }
  .choice_box .item_choice .address{
    flex: 1 1 auto;
  }
}
@media screen and (max-width: 576px){
  .choice_box .item_choice_detail{
    flex: 1 0 0;
  }
  .choice_box .item_choice .address{
    width: 100%;
  }
}

/* Choice Box END */

/* selected_salon START */
.area_selected_salon{
  display: flex;
  align-items: center;
}
.area_selected_salon .img{
  flex: 0 0 120px;
  height: 80px;
  margin: 0 20px 0 0;
}
.area_selected_salon .name{
  font: 600 16px/1.3em '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic' ,sans-serif;
  margin: 0 0 10px;
}
.area_selected_salon .address{
  font: 400 14px/1.3em '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic' ,sans-serif;
  display: flex;
  flex-wrap: wrap;
}
.area_selected_salon .address span{
  margin: 0 8px 0 0;
}

@media screen and (max-width: 576px){
  .area_selected_salon .img{
    flex: 0 0 90px;
    height: 60px;
    margin: 0 10px 0 0;
  }
  .area_selected_salon .name{
    font-size: 14px;
  }
  .area_selected_salon .address{
    font-size: 12px;
  }
}
/* selected_salon END */

/* News START */
.list_blog{
  padding: 0;
}
.news_bar {
  line-height: 40px;
  margin-bottom: 20px;
}
.news_item { padding: 5px 0px 20px 0px; }
.news_item a { text-decoration: none; }
.news_item .image {
  width: 135px;
  height: 100px;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
}
.news_item .news_date {
  color: #9EB1BF;
  margin-bottom: 5px;
}
.news_item .news_title { color: #000000; }
.news_item .news_des { margin-top: 7px; }
.news_item .image_top1 {
  width: 278px;
  height: 278px;
}
.news_item .news_des_top1 { margin: 20px 0px 30px 0px; }
.news_item .product_detail_link { text-decoration: underline; }
.news_related {
  margin: 40px 0px 0px 0px;
  font: 20px "Yu Gothic Bold";
  font-weight: bold;
}
.blog_title .avt{
  width: 51px;
  height: 51px;
  border-radius: 50%;
}
/* News END */

/* Introduction Service START */
.introduction_service
{
  padding-top: 55px;
}

.introduction_service .title_img{
  margin: 0 0 20px;
}

.introduction_service .about_kaizenbody {
  height: 120px;
  padding: 25px 0px;
  margin: 0px 0px 50px 0px;
}

.introduction_service .boint_recomomended {
  position: absolute;
  top: -25px;
  left: 35px;
}
.introduction_service_title h1 {
  border-bottom: 1px dotted;
  width: fit-content;
  margin: auto;
}
.introduction_service_content { border-bottom: 1px solid #cccccc; }
.introduction_service_content {
  border-bottom: 1px solid #cccccc;
}

.introduction_service .introduction_service_content .benefits{
  padding: 10px 0px;
}
.introduction_service .introduction_service_content .benefits p{
  font-size: 14px;
}
.introduction_service .introduction_service_content .benefits p.description{
  padding-top: 50px;
  text-align: center;
}

.introduction_service .introduction_service_content .benefit_point_01 {
  background: url('../../images/salon/ico_bg_01.svg') center no-repeat;
  min-height: 182px;
  padding-right: 35px;
}
.introduction_service .introduction_service_content .benefit_point_02 {
  background: url('../../images/salon/ico_bg_02.svg') center no-repeat;
  min-height: 182px;
}
.introduction_service .introduction_service_content .benefit_point_03 {
  background: url('../../images/salon/ico_bg_03.svg') center no-repeat;
  min-height: 182px;
  padding-left: 40px;
}

@media screen and (max-width: 992px){
  .introduction_service .boint_recomomended{
    height: 60px;
  }
}
@media screen and (max-width: 768px){
  .introduction_service img{
    height: 70px;
    margin: 0 20px 0 0;
  }
  .introduction_service .introduction_service_item{
    display: flex;
  }
  .introduction_service .introduction_service_item .ttl{
    text-align: left;
    margin: 0 0 8px;
  }
  .introduction_service .introduction_service_item + .introduction_service .introduction_service_item{
    margin: 20px 0 0;
  }
  .introduction_service .boint_recomomended{
    right: 0;
    left: auto;
    transform: rotate(28deg);
  }
}
@media screen and (max-width: 480px){
  .introduction_service img{
    height: 50px;
  }
  .introduction_service .boint_recomomended{
    height: 50px;
  }
}

/* 3つの特徴 */
@media screen and (max-width: 992px){
  .introduction_service .feature{
    width: 100%;
  }
}
@media screen and (max-width: 768px){
  .introduction_service .about_kaizenbody {
    height: 90px;
    padding: 14px 0px;
    margin: 0px 0px 40px;
  }
  .introduction_service .feature [class*="benefit_point_"]{
    background-position: right center;
    background-size: 11%;
    min-height: 20px;
  }
  .introduction_service .feature [class*="benefit_point_"] + [class*="benefit_point_"]{
    margin: 30px 0 0;
  }
  .introduction_service .feature [class*="benefit_point_"] p.description{
    text-align: left;
    padding: 0;
    margin: 0 0 4px;
  }
  .introduction_service .feature [class*="benefit_point_"] p{
    padding: 0;
  }
  .introduction_service .feature [class*="benefit_point_"][class*="03"]{
    padding: 0 10px;
  }
  .introduction_service .feature{
    margin: 40px 0 10px;
  }
}
@media screen and (max-width: 576px){
  .introduction_service .about_kaizenbody {
    height: 80px;
  }
  .introduction_service .feature [class*="benefit_point_"]{
    background-size: 15%;
  }
  .introduction_service .feature [class*="benefit_point_"] + [class*="benefit_point_"]{
    margin: 16px 0 0;
  }
}

/* サロン予約_アンケート詳細  */

/* Introduction Service END */

/* Product List START */
.product_list {
  display: flex;
  flex-wrap: wrap;
}
.product_list .product_list_item {
  position: relative;
  margin: 20px 20px 20px 0;
}
.product_list .product_list_item>.viewport {
  width: 170px;
  height: 130px;
}
.product_list .product_list_item .zoom_btn {
  font-weight: bold;
  font-size: 12px;
  padding: 5px 10px;
  background: rgba(255, 255, 255, .55);
  position: absolute;
  right: 10px;
  bottom: 10px;
  border-radius: 2px;
}
/* Product List END */

/* Abount Content START */

.about_content section{
  padding-top: 90px;
  padding-bottom: 90px;
}
.about_content { margin: 120px 0px 50px 0px; }
.about_content .central_text .text_purple {
  border-bottom: 1px dotted;
  width: fit-content;
  margin: auto;
}
@media screen and (max-width: 768px){
  .about_content section{
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .about_content .central_text{
    margin: 30px 0;
  }
  .about_content  .text_header{
    padding-bottom: 30px;
  }
}
@media screen and (max-width: 576px){
  .about_content .central_text .text_purple {
    width: 100%;
  }
  .about_content  .text_header{
    padding-bottom: 20px;
  }
}
@media screen and (max-width: 480px){
  .about_content section{
    padding-top: 40px;
    padding-bottom: 40px;
  }
}
/* Abount Content END */

/* Feature List START */
.feature_list {
  position: relative;
  top: -60px;
  justify-content: center;
}
.feature_list .feature_list_item {
  width: 190px;
  height: 190px;
  border-radius: 50%;
  background: linear-gradient(to bottom , #482B5C , #64286C);
  color: #ffffff;
  text-align: center;
  padding: 25px 20px;
  margin: 0 50px;
}
@media screen and (max-width: 992px){
  .feature_list .feature_list_item {
    margin: 0 20px;
  }
}
@media screen and (max-width: 768px){
  .feature_list .feature_list_item {
    margin: 0 8px;
  }
  .feature_list .feature_list_item {
    width: 170px;
    height: 170px;
    padding: 25px 16px;
  }
  .feature_list .feature_list_item .ttl{
    margin: 0 0 4px;
  }
}
@media screen and (max-width: 620px){
  .feature_list .feature_list_item {
    width: 140px;
    height: 140px;
    border-radius: 50%;
    padding: 18px 10px;
    margin: 0 4px;
  }
}
@media screen and (max-width: 480px){
  .feature_list .feature_list_item {
    width: 130px;
    height: 130px;
    border-radius: 8px;
    padding: 13px 10px;
  }
}

/* Feature List END */

/* Comment Box START */
.comment_box_list {
  width: 90%;
  margin: auto;
}
.comment_box_list_item {
  padding: 35px;
  height: 100%;
}
.comment_box_list_item img {
  position: absolute;
  bottom: 5px;
  right: 20px;
}

@media screen and (max-width: 992px){
  .comment_box_list_item {
    padding: 24px;
  }
}
@media screen and (max-width: 768px){
  .comment_box_list{
    width: 100%;
  }
}
@media screen and (max-width: 576px){
  .comment_box_list .row > div + div{
    margin: 10px 0 0;
  }
  .comment_box_list_item img{
    width: 30px;
  }
}
/* Comment Box END */

/* School Box START */
.school_box .school_box_item .viewport { height: 200px; }
.school_box .school_box_item button { margin-top: auto; }
.school_box .school_box_item{
  padding: 0 20px;
  font-size: 14px;
}

@media screen and (max-width: 992px){
  .school_box .school_box_item{
    padding: 0 10px;
    font-size: 14px;
  }
}
@media screen and (max-width: 768px){
  .school_box .school_box_item{
    padding: 20px 10px;
  }
  .about_content .list_menu{
    margin: -20px -10px;
  }
}
@media screen and (max-width: 576px){
  .school_box .school_box_item{
    padding: 10px 10px;
  }
  .about_content .list_menu{
    margin: -10px -10px;
  }
}
@media screen and (max-width: 480px){
  .school_box .school_box_item .viewport { height: 124px; }
}
/* School Box END */

/* Step Box START */
.b_coin_system .step_box {
  width: 70%;
  margin: 50px auto;
}
.step_box_item{
  width: 20%;
  padding: 0 40px 0 0;
  display: flex;
  flex-direction:column;
  position: relative;
}
.step_box_item:last-child{
}
.step_box_item article{
  flex: 1 1 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 35px 6px 15px;
  box-shadow: 0 2px 4px rgba(100, 40, 108, .16);
  position: relative;
  font-size: 15px;
  font-weight: bold;
  width: 100%;
  text-align: center;
}
.step_box_item .step_round_icon {
  background: #64286C;
  position: absolute;
  top: -10px;
  left: 40%;
  line-height: 30px;
}
.step_box_item:before{
  content: "";
  background: url(../../images/common/ico_arrow_right.svg) no-repeat center center !important;
  background-size: contain !important;
  width: 8px;
  height: 8px;
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
}
.step_box_item:last-child:before{
  display: none;
}
.step_box_item .selected_mark {
  position: absolute;
  top: 3px;
  left: 3px;
}
@media screen and (max-width: 992px){
  .b_coin_system .step_box{
    width: 100%;
  }
  .step_box_item article {
    padding: 35px 15px 15px;
  }
}
@media screen and (max-width: 768px){
  .b_coin_system .step_box {
    margin: 30px auto;
  }
  .step_box_item article{
    font-size: 13px;
    padding: 35px 8px 8px;
  }
  .step_box_item{
    padding: 0 24px 0 0;
  }
  .step_box_item:before{
    right: 8px;
  }
}
@media screen and (max-width: 576px){
  .b_coin_system .step_box {
    margin: 0px auto;
  }
  .step_box{
    flex-wrap: wrap;
    justify-content: flex-start;
  }
  .step_box_item{
    width: 33.3333%;
    padding-top: 20px;
  }
  .step_box{
    margin-top: -20px;
  }
}

/* Step Box END */

/* Text Header START */
.text_header h2 {
  padding-top: 20px;
  width: fit-content;
  margin: auto;
  border-bottom: 1px dotted;
}
/* Text Header END */

/* Submit Link START */
.area_copy > div{
  color: #E24091;
  border: #E24091 1px solid;
  padding: 15px 40px;
  display: inline-block;
}
@media screen and (max-width: 768px){
  .area_copy > div{
    width: 100%;
    padding: 14px 0;
  }
}
/* Submit Link END */

/* Payment Box START */
.payment_box {
  width: 300px;
  margin: 0 0 40px;
}
.payment_box .viewport {
  width: 50%;
  height: 100px;
}
.payment_box_or {
  width: 10%;
  font: 24px 'cinzel-regular';
  text-align: center;
}
@media screen and (max-width: 768px){
  .payment_box {
    margin: 0 0 30px;
  }
  .payment_box_or {
    width: 14%;
    font: 20px 'cinzel-regular';
  }
}
@media screen and (max-width: 576px){
  .payment_box .bg_white{
    padding: 10px 0;
    margin: 10px 0;
  }
  .payment_box .viewport.fit_v img{
    height: 80px;
  }
  .payment_box_or {
    width: 14%;
    font: 18px 'cinzel-regular';
  }
}
@media screen and (max-width: 480px){
  .payment_box .bg_white{
    padding: 8px 0;
    margin: 0 0 10px;
  }
  .payment_box_or {
    width: 28%;
    font: 14px 'cinzel-regular';
  }
}
/* Payment Box END */

/* Card Group & Coin Box START */
.card_group {
  background: #ffffff;
  padding: 50px 0px;
}
.card_content {
  text-align: left;
  padding: 25px 30px 50px 30px;
  height: 50px;
  font-weight: 500
}
.card_content .coin_step1 {
  position: absolute;
  top: -32px;
  left: 30px;
  color: #E62F8B;
  font-size: 44px;
}
.card_content .img_coin1 {
  position: absolute;
  top: -13px;
  right: 25px;
  background: 100% 100%;
  width: 10%;
}
.card_content .img_coin2 {
  position: absolute;
  top: -13px;
  right: 60px;
  background: 100% 100%;
  width: 10%;
}
.card_content .img_coin3 {
  position: absolute;
  top: -13px;
  right: 95px;
  background: 100% 100%;
  width: 10%;
}
.coin_box {
  position: relative;
  border: 1px solid #E24091;
  background: #ffffff;
  background-size: 100% 100%;
  margin-top: 10px;
  margin-bottom: 50px;
  font-weight: bold;
  text-align: center;
  height: 42px;;
}
.coin_box strong {
  color: #E62F8B;
  font: 26px '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic' ,sans-serif;
  font-weight: bold;
}

@media screen and (max-width: 576px){
  .card_group {
    padding: 30px 0px 40px;
  }
}
/* Card Group & Coin Box START */

/* 新着情報 START */
.head_title {
  margin: 40px 0px 25px 0px;
  border-bottom: 1px solid #F2EFF2;
  padding: 0 0 10px;
  align-items: flex-end;
}
/* 新着情報 END */

/* content_block start */
.content_block { margin-bottom: 2em; }
.content_block a { text-decoration: underline; }
.content_block a.btn { text-decoration: none; }
/* content_block end */

/* Ads START */
.ads .top {
  padding: 15px 10px;
  border: 1px solid #E62E8B;
  font-weight: bold;
  text-align: center;
}
@media screen and (max-width: 992px){
  .ads .top{
    display: flex;
    justify-content: center;
    align-items: baseline;
    padding: 10px;
    margin: 20px 0 0;
  }
  .ads .top .ttl{
    font-size: 16px;
    margin: 0 20px 0 0;
    font-weight: 500;
  }
  .ads .top .cnt{
    font: 600 14px/1em '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic' ,sans-serif;
  }
}

.ads .bottom {
  padding: 20px 10px;
  margin-top: 10px;
  background-color: #F2EFF2;
}
@media screen and (max-width: 992px){
  .ads .bottom {
    padding: 1px;
  }
}


/* Ads END */

/* Statistic START */
.statistic { background-color: #F7F4F8; }
/* Statistic END */

/* Lastest Reservation START  */
.lastest_reservation .checkbox_item { margin-top: 2em; }
/* Lastest Reservation */

/* Operation Menu START */

.operation_menu .list_menu > div,
.operation_menu .area_menu > div {
  width: 20%;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 20%;
  flex: 0 0 20%;
  max-width: 20%;
}
.operation_menu .cal {
  background-color: #DBCDDD;
  margin-left: 15px;
  padding: 5px 10px;
}
.operation_menu .description{
  line-height: 1.7;
}
@media screen and (max-width: 768px){
  .operation_menu .list_menu > div,
  .operation_menu .area_menu > div {
    width: 33.333333%;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 33.333333%;
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
}
@media screen and (max-width: 576px){
  .operation_menu .list_menu > div,
  .operation_menu .area_menu > div {
    width: 50%;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
  }
  .operation_menu .cal .time{
    font-size: 18px;
    line-height: 1;
  }
  .operation_menu .text_pink{
    margin: 14px 0 8px;
  }
  .operation_menu .description{
    margin: 20px 0 ;
  }
  .operation_menu .px_2{
    font-size: 12px;
  }
}
/* Operation Menu END */

/* Questionnaire START */
.questionnaire .content_container {
  max-height: 600px;
  overflow-y: scroll;
}
.questionnaire .content_container .item {
  border-bottom: 1px solid #F2EFF2;
  padding-bottom: 15px;
  width: 97%;
}
/* Questionnaire END */

/* salon detail head START */

.nav_salon_detail{
  margin: 60px 0;
}

@media screen and (max-width: 768px){
  .head_salon_detail .salon_name{
    font-size: 22px;
  }
  .nav_salon_detail{
    margin: 40px 0;
  }
  .nav_salon_detail .nav_item{
    margin-right: 10px;
  }
}
@media screen and (max-width: 576px){
  .head_salon_detail .salon_name{
    font-size: 18px;
    margin: 0 0 6px;
  }
  .area_add_favorite .mr_5{
    margin: 8px 0 0;
  }
  .head_salon_detail .text_purple_muted{
    margin: 0 16px;
  }
  .nav_salon_detail{
    margin: 30px 0 40px;
  }
  .nav_salon_detail .nav_item a{
    font-size: 13px;
  }
}
@media screen and (max-width: 480px){
  .area_esthetician_info article + article{
    margin: 4px 0 0;
  }
}

/* salon detail head END */

/* Salon Detail START */
/* img */
.area_salon_info .img:before{
  content: "";
  width: 100%;
  display: block;
  padding-top: 74%;
}
@media screen and (max-width: 768px){
  .area_salon_info .img:before{
    padding-top: 64%;
  }
}
@media screen and (max-width: 576px){
  .area_salon_info .salon_name{
    font-size: 20px;
  }
}
@media screen and (max-width: 480px){
  .area_salon_info{
    margin: 0px;
  }
}

/*  */
.salon_detail_info .line_info {
  display: flex;
  margin-top: 7px;
}
.salon_detail_info .line_info .left_side {
  display: flex;
  justify-content: space-between;
  width: 120px;
  flex: 0 0 120px;
  margin-right: 15px;
}
.salon_detail .description { line-height: 30px; }
.salon_detail .salon_featured_thumb_wrap { height: 340px; }
.salon_detail .salon_featured_items > .viewport { height: 65px; width: 65px}
.salon_detail_info .line_info .right_side{
  word-break: break-all;
}
.pswp--zoom-allowed .pswp__img{
  height: auto !important;
  max-height: 100vh;
  width: auto;
}
/* Salon Detail END */

/* Technician List START */
.technician_list_item {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 15px;
}
.technician_list_item .image {
  flex: 0 0 125px;
  width: 125px;
  height: 125px;
  margin-right: 25px;
}

.technician_list_item .image .img:before{
  content: "";
  display: block;
  width: 100%;
  padding-top: 100%;
}

.technician_list_item .employee_area .total{
  padding-bottom: 8px;
  margin-bottom: 8px;
  margin-top: 16px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}

.technician_list_item .point_area {
  max-width: 200px;
  margin-left: 15px;
}
.technician_list_item .point_area .line_info {
  display: flex;
  margin-top: 7px;
}
.technician_list_item .point_area .line_info .right_side {
  text-align: right;
  margin-left: auto;
}
.technician_list_item .button_area {
  /* max-width: 160px; */
  margin-left: 32px;
}
.technician_list_item .button_area .btn { min-width: 180px; }
.technician_list_item .divider {
  height: 90px;
  border-right: 1px solid rgba(0, 0, 0, 0.08);
}

/*
@media screen and (max-width: 768px){
  .technician_list_item .image {
    flex: 0 0 100px;
    width: 100px;
    height: 100px;
    margin-right: 25px;
  }
  .technician_list_item .button_area {
    max-width: 120px;
    margin-left: 10px;
  }
  .technician_list_item .button_area .btn {
    min-width: 140px;
    padding: 6px;
    font-size: 13px;
  }
  .technician_list_item .employee_area .total{
    padding-bottom: 8px;
  }
}
*/
@media screen and (max-width:1090px) {
  .technician_list_item{
    flex-direction:column;
    margin-bottom: 30px;
  }
  .technician_list_item > div{
    width: 100%;
  }
  .technician_list_item .button_area{
    display: flex;
    justify-content: flex-end;
    width: 100%;
    max-width: none;
    margin: 10px 0 0;
  }
  .technician_list_item .button_area > div + div{
    margin: 0 0 0 4px;
  }
  .technician_list_item .button_area .btn {
    min-width: 120px;
    height: 32px;
    line-height: 1.6;
  }
}
@media screen and (max-width: 480px){
  .technician_list_item .image {
    flex: 0 0 80px;
    width: 80px;
    height: 80px;
    margin-right: 16px;
  }
}
/* Technician List END */

/* Salon Search START */
/* .salon_search_form { margin: 30px 0 20px 0px; } */
.salon_search_form .search_input {
  background-image: url('../../images/common/ico_search.svg');
  background-position: right 12px center;
  background-repeat: no-repeat;
  min-width: 280px;
  margin-right: 7px;
  font-size: 14px;
}
.salon_search_form .search_btn {
  font-weight: bold;
  border-radius: 0;
}
@media screen and (max-width: 576px){
  .salon_search_form{
    width: 100%;
  }
  .salon_search_form .search_input {
    min-width: 200px;
  }
}
/* Salon Search END */

/* Filter START */

.filter_info .count {
  font-size: 30px;
  font-family: 'cinzel-regular';
  margin: 0 5px 0 15px;
}
.filter_form select.form_control {
  min-width: 170px;
  font-size: 16px;
  font-family: '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic' ,sans-serif;
}
.filter_result { margin-top: 25px; }
@media screen and (max-width: 576px){
  .filter_form.salon{
    margin: 4px 0 0;
    flex-direction:column;
  }
  .filter_form.salon  input{
    margin: 4px 0;
  }
  .filter_form select.form_control {
    height: 32px;
    font-size: 14px;
  }
  .filter_info .count {
    font-size: 26px;
    margin: 0 5px 0 7px;
  }
}

/* 絞り込み 月 */
.area_refine_month .wrap_input{
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 8px 0;
}
.area_refine_month .wrap_select{
  flex: 0 0 160px;
}
.area_refine_month .area_btn{
  margin: 0 0 0 4px;
}

/* Filter END */

/* Room Info START */
.room_info  {
  position: relative;
}
.room_info .image .img:before{
  content: "";
  display: block;
  width: 100%;
  padding-top: 80%;
}
.room_info .image {
  width: 215px;
  height: 167px;
  margin-right: 30px;
}
.room_info .step_round_icon {
  top: -15px;
  left: -13px;
}
.room_info .btn_favorite {
  position: absolute;
  display: block;
  bottom: 0;
  right: 0;
  background-color: rgba(255,255,255,0.8);
  padding: 17px;
}
.room_info .date_select {
  display: flex;
  align-items: center;
  margin-top: 5px;
}
.room_info .date_select .date_item{
  display: flex;
  align-items: center;
  padding: 0px 0px 0px 3px;
  font-size: 14px;
  font-family: 'hiragino-sans-gb-w6';
  min-width: 120px;
}
.room_info .date_select .date_item .list_style_icon{
  width: 8px;
  height: 8px;
  background: #000;
  display: inline-block;
  margin-right: 8px;
}
.room_info .date_select .btn_reservation{
  font: bold 13px '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic' ,sans-serif;
  width: 200px;
  line-height: 1.8;
}
.room_info summary {
  list-style: none;
  cursor: pointer;
}
.room_info details .icon {
  transform: rotate(180deg);
}
.room_info details[open] .icon {
  transform: rotate(0deg);
}
.room_info .other_filter {
  margin-top: 15px;
}
.room_info .other_filter > * { margin: 0 7px 7px 0; }
.room_info .other_filter > *:last-child { margin-right: 0; }
.room_info .other_filter > select.form_control {
  font-size: 14px;
  min-width: 200px;
  color: #5F656A;
}
.room_info .other_filter > .btn_reservation {
  min-width: 200px;
  font-weight: bold;
}
.room_info .other_filter > .btn_reservation_at {
  min-width: 140px;
  font-weight: bold;
}
@media screen and (max-width: 992px){
  .room_info .image {
    width: 180px;
    height: 100%;
    margin-right: 20px;
  }
}
@media screen and (max-width: 576px){
  .room_info .image {
    width: 120px;
    height: 100%;
    margin: 0 0 10px;
  }
  .room_info .point{
    margin: 4px 0 0;
  }
  .room_info .date_select .btn_reservation{
    width: 140px;
  }
}

/* 新しいスタイル */
.new_room_info .image {
  min-width: 180px;
}
.new_room_info .btn {
  min-width: 130px;
  padding-inline: 6px;
}
.new_room_info .step_round_icon {
  position: absolute;
  top: -13px;
}
@media screen and (max-width: 768px){
  .new_room_info .image {
    min-width: 160px;
  }
  .new_room_info .btn {
    width: calc(100% / 2);
  }
  .new_room_info:has(.btn:nth-child(3)) .btn {
    min-width: auto;
    width: calc(100% / 3);
  }
}
@media screen and (max-width: 576px){
  .new_room_info .image {
    margin: 0;
    margin-right: 10px;
  }
  .room_info .point {
    margin: 6px 0 0;
  }
  .new_room_info .add_gap_10 {
    gap: 4px;
  }
}
@media screen and (max-width: 480px){
  .new_room_info .image {
    width: 100%;
    margin: 0 0 10px;
  }
}

/* Room Info END */

/* Reservation Step List Item 予約方法 START */
.reservation_step_list_item .viewport{
  width: 390px;
  height: 250px;
}
.reservation_step_list_item{
  display: flex;
  align-items: center;
}
.reservation_step_list_item img{
  width: 100%;
}
.reservation_step_list_item .img{
  flex: 0 0 380px;
  margin: 0 50px 0 0;
}
.reservation_step_list{

}
@media screen and (max-width: 992px){
  .reservation_step_list_item .img{
    flex: 0 0 280px;
  }
}
@media screen and (max-width: 768px){
  .reservation_step_list_item .img{
    flex: 0 0 240px;
    margin: 0 30px 0 0;
  }
}
@media screen and (max-width: 576px){
  .reservation_step_list_item{
    flex-direction:column;
  }
  .reservation_step_list_item .img{
    margin: 0 0 10px;
    flex: 0 0 auto;
  }
  .reservation_step_list_item p{
    margin: 0;
  }
  .reservation_step_list_item .ttl{
    margin: 4px 0;
  }
}

/* Reservation Step List Item END */

/* Schedule START */
@media screen and (max-width: 786px){
  .reservation_time_container .btn_outline_gray{
    padding: 6px 24px;
    height: 40px;
    line-height: 29px;
  }
}

.this_month small{
  padding: 0 4px;
}

@media screen and (max-width: 576px){
  .reservation_time_container > div:first-child{
    margin: 10px 0 30px;
  }
  .reservation_time_container .this_month .lblYear,
  .reservation_time_container .this_month .lblMonth{
    font-size: 24px;
  }
  .reservation_time_container .ico_left_arrow_after::before,
  .reservation_time_container  .ico_right_arrow_after::after{
    margin: 5px 8px;
  }
  .reservation_time_container .btn_outline_gray{
    font-size: 12px;
    padding: 6px 15px;
    height: 34px;
    line-height: 18px;
  }
}
@media screen and (max-width: 480px){
  .reservation_time_container > div:first-child{
    margin: 10px 0;
  }
  .reservation_time_container .this_month .lblYear,
  .reservation_time_container .this_month .lblMonth{
    font-size: 20px;
  }
  .reservation_time_container .btn_outline_gray{
    padding: 6px 10px;
  }
  .reservation_time_container .ico_left_arrow_after::before, .reservation_time_container .ico_right_arrow_after::after {
    margin: 2px 10px;
    padding: 0;
  }
}

/* Schedule END */

/* Table Schedule START */
.table_schedule { width: 100%; margin-bottom: 1rem; color: #212529; }
.table_schedule tr { height: 45px; }
.table_schedule tr th { text-align: center; }
.table_schedule tr td { text-align: center; }
.table_schedule tbody tr:nth-of-type(odd) { background: #FAF8FA;}
.table_schedule thead tr { height: 65px; }
.table_schedule tbody tr .selected { border-color: #64286C; background-color: #64286C }
.table_schedule tbody tr .selected > .ico { filter: brightness(0) invert(1); }

.table_schedule .reserved{
  font-family: '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic' ,sans-serif;
  color: #cdbad0;
}

/* Table Schedule END */

/* Fake Checkbox START */
.checkbox_item.fake_checkbox {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  z-index: 1;
}
.checkbox_item.fake_checkbox input[type="checkbox"] ~ .checkmark {
  background-color: #EAE1EA;
  border-color: #EAE1EA;
  border-radius: 0 0 1px 0;
}
.checkbox_item.fake_checkbox input[type="checkbox"] ~ .checkmark::after { display: block; }
/* Fake Checkbox END */

/* Reservation Menu START */

.reservation_menu .item {
  position: relative;
  margin-bottom: 20px;
  border: 2px solid #EAE1EA;
  border-radius: 2px;
  cursor: pointer;
  transition: background-color 0.3s ease;
}
.reservation_menu .item .img:before{
  content: "";
  display: block;
  width: 100%;
  padding-top: 100%;
}
.reservation_menu .item:hover { background-color: #F7F7F7; }
.reservation_menu .item.selected { border: 2px solid #E24091; }
.reservation_menu .item .image { width: 193px; height: auto; }
.reservation_menu .item .image img { height: 100%; }
.reservation_menu .item .content { padding: 15px 15px 15px 25px; align-self: center; }
.reservation_menu .item .content .title {
  font-family: 'hiragino-sans-gb-w6';
  font-size: 18px;
  color: rgba(0, 0, 0, .24);
}
.reservation_menu .item.selected .content .title { color: #000; }
.reservation_menu .item .content .price_big {
  color: #E24091;
  font-family: '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic' ,sans-serif;
  font-size: 22px;
  font-weight: bold;
  margin: 3px 15px 5px 0;
}
.reservation_menu .item .watermark_logo {
  font-size: 17px;
  font-family: 'cinzel-regular';
  opacity: .15;
  position: absolute;
  top: 15px;
  right: 10px;
}
.reservation_menu .item.disabled {
  cursor: default;
}
.reservation_menu .item.disabled::after {
  content: "";
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.6);
}
.reservation_menu .menu_disabled {
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  width: 100%;
  text-align: center;
}
@media screen and (max-width: 768px){
  .reservation_menu .item .content { padding: 10px 15px 10px 20px; }
  .reservation_menu .item .content .title{
    font-size: 16px;
  }
  .reservation_menu .item .content .price_big{
    font-size: 18px;
  }
  .reservation_menu .item .image { width: 160px; }
  .reservation_menu .item .watermark_logo {
    font-size: 14px;
  }
}
@media screen and (max-width: 576px){
  .reservation_menu{
    padding: 0;
  }
  .reservation_menu .item {
    margin-bottom: 10px;
  }
  .reservation_menu .item .image { width: 120px; }
  .reservation_menu .item .description{
    font-size: 12px;
  }
  .reservation_menu .item .img:before{
    padding-top: 130%;
  }
  .reservation_menu .item .menu_info .time{
    font-size: 12px;
  }
  .reservation_menu .item .watermark_logo {
    font-size: 12px;
  }
}
/* Reservation Menu END */

/* Order Technician START */
.order_technician .item {
  position: relative;
  margin-right: 20px;
  cursor: pointer;
  opacity: 0.9;
  transition: opacity 0.3s ease;
}
.order_technician .item:hover { opacity: 1; }
.order_technician .item .checkbox_item {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
}
.order_technician .description {
  font-size: 14px;
  text-align: center;
  font-family: 'hiragino-sans-gb-w6';
  margin-top: 5px;
  opacity: .41;
  transition: opacity 0.3s ease;
}
.order_technician .item:hover .description { opacity: 1; }
.order_technician .selected .checkbox_item { display: block; }
.order_technician .selected .salon_esthetician_body { border: 1px solid #E24091; }
.order_technician .item .img:before{
  content: "";
  display: block;
  width: 100%;
  padding-top: 100%;
}
@media screen and (max-width: 768px){
  .area_esthetician_select{
    display: flex;
    flex-wrap: wrap;
  }
  .order_technician .item {
    margin-right: 10px;
    min-width: 100px;
  }
}
@media screen and (max-width: 576px){
  .order_technician{
    padding: 0;
  }
}

/* Order Technician END */

/* Reservation Calendar START */
.reservation_time_container > .reservation_time_container{
  padding: 0;
}
.reservation_calendar .ico_ecllipse {
  width: 19px;
  height: 19px;
}
.reservation_calendar button { height: 36px; width: 56px; padding: 0px; }

@media screen and (max-width: 576px){
  .reservation_calendar thead .date{
    font-size: 16px;
  }
  .reservation_calendar .time span{
    font-size: 13px;
  }
  .reservation_calendar button {
    width: auto;
    padding: 0 4px;
  }
}
@media screen and (max-width: 480px){
  .reservation_calendar thead .date{
    font-size: 14px;
  }
}


/* Reservation Calendar END */

/* Checkbox Custom START */
.checkbox_custom label { border-radius: 0 0 2px 0; }
.checkbox_custom label:after {
    border-width: 2px;
    top: 5px;
    left: 4px;
}
/* Checkbox Custom END */

/* Icons START */
.ico_right_arrow_after::after {
  display: inline-block;
  width: 5px;
  height: 9px;
  background: url('../../images/common/ico_arrow_right_gray.svg') center no-repeat;
  background-size: 100% 100%;
  padding: 0 10px;
  margin: 5px 25px;
  color: #6c757d;
  content: "";
}
.ico_left_arrow_after::before {
  display: inline-block;
  width: 5px;
  height: 9px;
  background: url('../../images/common/ico_arrow_left_gray.svg') center no-repeat;
  background-size: 100% 100%;
  padding: 0 10px;
  margin: 5px 25px;
  color: #6c757d;
  content: "";
}
/* Icons START */
/* User Summary (kaizen10)*/
.statistic .author_avatar{
  width: 50px;
  border-radius: 50%;
}
@media screen and (max-width: 576px){
  .statistic .author_avatar{
    width: 34px;
  }
}
/* end */
/* overwrite page_intro font size*/
.page_introduction_center .title.font_60{
  font-size: 60px;
}
.page_introduction .title.font_56{
  font-size: 56px;
}
@media screen and (max-width: 992px){
  .page_introduction .title.font_56{
    font-size: 52px;
  }
}
@media screen and (max-width: 768px){
  .page_introduction_center .title.font_60{
    font-size: 54px;
  }
  .page_introduction .title.font_56{
    font-size: 48px;
  }
}
@media screen and (max-width: 576px){
  .page_introduction_center .title.font_60{
    font-size: 36px;
  }
  .page_introduction .title.font_56{
    font-size: 32px;
  }
}

/* end */
#review .review_list_item{
  padding: 15px 0;
  border-bottom: 1px solid #F0F4F8;
}

/* Blog START */
.list_blog_nxt_prv{
  list-style: none;
  display: flex;
  border-top: 1px solid #F2F2F2;
  border-bottom: 1px solid #F2F2F2;
  padding: 0;
}
.list_blog_nxt_prv > li{
  width: 50%;
  position: relative;
  display: flex;
  flex-direction:column;
  justify-content: space-between;
  padding: 20px 50px;
}
.list_blog_nxt_prv > li .ttl{
  font-size: 14px;
}
.link_cover{
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
.list_blog_nxt_prv > li:before{
  content: "";
  background: url(../../images/common/ico_left_arrow.svg) no-repeat center center !important;
  background-size: contain !important;
  width: 16px;
  height: 16px;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
.list_blog_nxt_prv > li:last-child{
  align-items: flex-end;
  border-left: 1px solid #F0F4F8;
}
.list_blog_nxt_prv > li:last-child:before{
  left: auto;
  right: 0;
  transform: translateY(-50%) rotate(180deg);
}
.area_blog_foot .writer{
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 50px 0;
}
.area_blog_foot .writer > div{
  position: relative;
}
.area_blog_foot .writer p{
  font: 500 15px/1.4em '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic' ,sans-serif;
  margin: 0 10px 0 0;
}
/* Blog END */

/* modal CSS */
.tingle-modal-box{
  width: 560px;
}
.tingle-modal__close{
  display: none;
}
.tingle-modal-box .notification_content img{
  width: 30px;
}
.tingle-modal-box .notification_content button{
  width: 45%;
  font: 14px '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic' ,sans-serif
  border: 1px solid #D9E6F2;
  height: 50px;
  padding: 0;
}
.tingle-modal-box .ico{
  background-size: 100% 100%;
  width: 10px;
  height: 1em;
  display: inline-block;
  vertical-align: middle;
}
.tingle-modal-box .ico.ico_closemodal{
  background-image: url('../../images/online/ico_closemodal.svg');
}

@media screen and (max-width: 576px){
  .tingle-modal-box{
    width: 94%;
    margin: 0 auto;
  }
  .tingle-modal-box .message{
    font-size: 14px;
  }
}

/*  */
.tingle-modal-box__content{
  position: relative;
}
.tingle-modal-box .notification_content .ico_closemodal{
  position: absolute;
  top: 10px;
  right: 10px;

}
.tingle-modal-box .notification_content .ico_closemodal:hover{
  cursor: pointer;
}

.notification_content.p57 .warning_icon{
  display: inline-block;
  width: 43px;
  height: 38px;
  background: url(../../images/online/ico_warning.svg) center center no-repeat;
  margin-bottom: 32px;
}

.notification_content.p57 .underline_text{
  color: #64286C;
  text-decoration: underline;
  font: bold 13px '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic' ,sans-serif;
}

.notification_content.p57 button{
  font: 500 14px '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic' ,sans-serif;
  width: 200px;
  height: 50px;
  margin: 38px 0px 18px;
}

.bg_heart{
  background: url(../../images/salon/ico_heart_white.svg) left 30px center no-repeat;
  background-color: #64286C;
  padding-left: 50px;
}
/*
.navbar_toolbar .btn_group{
  display: block;
}
*/
.navbar_toolbar .btn_group button{
  margin: 0px;
}

/* confirm */
.area_confirm .confirm_info .ttl{
  position: relative;
  flex: 0 0 130px;
}
.area_confirm .confirm_info .ttl:before{
  content: "：";
  position: absolute;
  right: 0;
  top: 0;
}
@media screen and (max-width: 576px){
  .area_confirm .confirm_info .cnt p{
    margin: 0 0 8px;
  }
  .area_confirm .confirm_info .ttl{
    margin: 0 0 5px;
    flex: 0 0 auto;
  }
  .area_confirm .confirm_info .ttl:before{
    display: none;
  }
  .area_confirm .confirm_info{
    padding: 0;
  }
  .area_confirm .confirm_info + .confirm_info{
    margin: 10px 0 0;
  }
  .area_confirm .confirm_info .cnt{
    padding: 0;
  }
  .area_confirm .box_confirm .btn_xl{
    font-size: 12px;
    padding: 2px 15px;
    height: 32px;
    line-height: 28px;
  }

}

/* esthetician detail START */
.list_sns{
  padding: 0;
  margin: 0 0 16px 0;
  flex-wrap: wrap;
}
.list_sns.blog{
  margin: 0;
}
.list_sns > li{
  padding: 0 0 0 22px;
  position: relative;
}
.list_sns a{
  color: #333;
}
.list_sns li:hover a{
  color: #000;
}
.list_sns > li{
  margin: 0 20px 0 0;
}
.list_sns > li:last-child{
  margin: 0;
}
@media screen and (max-width: 560px){
  .list_sns > li{
    margin: 0 10px 0 0;
  }
}
.list_sns > li:before{
  content: "";
  background: #333;
  width: 15px;
  height: 15px;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
.list_sns > li.ameblo:before{ background: url('../../images/common/ico_ameblo.svg') no-repeat center center !important; background-size: contain !important;}
.list_sns > li.insta:before{ background: url('../../images/common/ico_instagram.svg') no-repeat center center !important; background-size: contain !important;}
.list_sns > li.twitter:before{ background: url('../../images/common/ico_twitter.svg') no-repeat center center !important; background-size: contain !important;}
.list_sns > li.facebook:before{ background: url('../../images/common/ico_facebook.svg') no-repeat center center !important; background-size: contain !important;}
.list_sns > li.youtube:before{ background: url('../../images/common/ico_youtube.svg') no-repeat center center !important; background-size: contain !important;}
.list_sns > li.profile:before{ background: url('../../images/common/ico_profile.svg') no-repeat center center !important; background-size: contain !important;}

/* esthetician blag START */
.blog img {
  max-width: 100%;
  height: auto !important;
}

@media screen and (max-width: 576px){
  .blog img {
    height: auto !important;
  }
}

/* ! サロンブログ ———————————————————————————————————————————————————————————— */
/* リスト ------------- */
.list_blog_salon{
  padding: 0;
}
.list_blog_salon > li{
  border-bottom: 1px solid #E6E6E6;
  padding: 30px 0;
}
.list_blog_salon article{
  display: flex;
  align-items: flex-start;
  position: relative;
}
.list_blog_salon article > a{
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.list_blog_salon .text{
  flex: 1 1 auto;
  min-width: 10px;
}
.list_blog_salon .ttl{
  font: 600 24px/1em '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic' , sans-serif;
  margin: 0 0 20px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.list_blog_salon .description{
  font: 400 18px/1em '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic' , sans-serif;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.list_blog_salon .img{
  flex: 0 0 300px;
  margin: 0 0 0 60px;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
}
.list_blog_salon .img:before{
  content: "";
  display: block;
  width: 100%;
  padding-top: 60%;
}
.list_blog_salon article:hover .ttl{
  color: #64286C;
  text-decoration: underline;
}
@media screen and (max-width: 860px){
  .list_blog_salon .img{
    flex: 0 0 200px;
    margin: 0 0 0 30px;
  }
}
@media screen and (max-width: 768px){
  .list_blog_salon .ttl{
    font-size: 20px;
  }
  .list_blog_salon .description{
    font-size: 14px;
  }
}
@media screen and (max-width: 560px){
  .list_blog_salon > li{
    padding: 16px 0;
  }
  .list_blog_salon .img{
    flex: 0 0 130px;
    margin: 0 0 0 20px;
  }
  .list_blog_salon .ttl{
    font-size: 18px;
    margin: 0 0 10px;
  }
}
@media screen and (max-width: 375px){
  .list_blog_salon .img{
    flex: 0 0 100px;
    margin: 0 0 0 20px;
  }
}

/* 日付・ユーザー */
.area_blog_info{
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  margin: 20px 0 0;
}
.area_blog_info .date{
  color: #aaa;
  font: 300 14px/1em '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic' , sans-serif;
  margin: 0;
}
@media screen and (max-width: 560px){
  .area_blog_info{
    margin: 10px 0 0;
  }
}
@media screen and (max-width: 480px){
  .area_blog_info{
    display: block;
  }
  .area_blog_info .date{
    font-size: 12px;
  }
}

/* ユーザー */
.list_blog_salon .block_user{
  margin: 0 0 0 auto;
  flex: 0 0 300px;
}
.block_user{
  display: flex;
  align-items: center;
  justify-content: flex-end;
  position: relative;
}
.block_user > a{
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.block_user [class*="thumb"]{
  flex: 0 0 30px;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
  border-radius: 50px;
  margin: 0 8px 0 0;
}
.block_user [class*="thumb"]:before{
  content: "";
  display: block;
  width: 100%;
  padding-top: 100%;
}
.block_user .name{
  margin: 0;
  font: 600 16px/1em '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic' , sans-serif;
}
.block_user:hover{
  opacity: .7;
}

@media screen and (max-width: 768px){
  .block_user .name{
    font-size: 13px;
  }
  .block_user [class*="thumb"]{
    flex: 0 0 20px;
  }
}
@media screen and (max-width: 480px){
  .list_blog_salon .block_user{
    margin: 4px 0 0;
  }
}


/* 詳細 ------------- */
.area_blog_cnt_wrap{
  background-color: #F7F4F8;
  padding: 3rem;
  margin: 0 0 50px;
}
.area_blog_cnt_wrap .list_action_sns{
  max-width: 700px;
}
.area_blog_cnt{
  word-wrap: break-word;
  background-color: #fff;
  border: 1px solid #d4c7d8;
  max-width: 700px;
  padding: 40px;
  margin: 0 auto;
}
.area_blog_cnt > p{
  font: 400 16px/1.6em '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic' , sans-serif;
}
.area_blog_cnt a{
  color: #64286C;
  text-decoration: underline;
}
.area_blog_cnt a:hover{
  color:#4f2056;
  text-decoration: none;
}

@media screen and (max-width: 768px){
  .area_blog_cnt_wrap{
    padding: 0;
    background-color: #fff;
  }
}
@media screen and (max-width: 560px){
  .area_blog_cnt{
    padding: 3rem 10vw;
  }
  .area_blog_cnt > p{
    font-size: 14px;
  }
}
.area_blog_cnt iframe {
  max-width: 100%;
}


/* 横並び＿min ------------- */
.list_blog_salon.min{
  display: flex;
  flex-wrap: wrap;
  margin: 10px -16px -16px;
}
.list_blog_salon.min > li{
  padding: 16px;
  width: 50%;
  border: none;
}
.list_blog_salon.min .img{
  flex: 0 0 180px;
  margin: 0 0 0 20px;
}
.list_blog_salon.min .ttl{
  font: 600 16px/1em '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic' , sans-serif;
  margin: 0 0 14px;
}
.list_blog_salon.min .description{
  font: 400 13px/1em '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic' , sans-serif;
}
@media screen and (max-width: 960px){
  .list_blog_salon.min > li{
    width: 100%;
  }
  .list_blog_salon.min .img{
    flex: 0 0 140px;
    margin: 0 0 0 10px;
  }
}
@media screen and (max-width: 560px){
  .list_blog_salon.min .ttl{
    margin: 0 0 10px;
  }
}
@media screen and (max-width: 480px){
  .list_blog_salon.min .img{
    flex: 0 0 100px;
  }
}

/* 日付・ユーザー */
.min .area_blog_info{
  display: flex;
  align-items: center;
  margin: 16px 0 0;
}
.min .area_blog_info .date{
  font: 300 14px/1em '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic' , sans-serif;
}
.min .block_user .name{
  font-size: 13px;
}
@media screen and (max-width: 960px){
  .min .area_blog_info{
    margin: 10px 0 0;
  }
}
@media screen and (max-width: 480px){
  .min .area_blog_info{
    display: block;
  }
  .min .area_blog_info .date{
    font-size: 12px;
  }
}

/* ユーザー */
.list_blog_salon.min .block_user{
  margin: 0 0 0 auto;
  flex: 0 0 160px;
}



/* ! ====================================================================================================
　■ 基調講演
==================================================================================================== */

/* ! ボタン ============================== */

/* サロン詳細 */
[class*="btnarea_"][class*="recruit"]{
  margin: 30px 0 0;
  display: flex;
  justify-content: center;
}
[class*="btn_"][class*="recruit"]{
  color: #fff;
  font: 600 13px/1em '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic' , sans-serif;
  background: #4C177F;
  border-radius: 50px;
  border: 2px solid #fff;
  height: 44px;
  padding: 0 40px;
  box-shadow:0px 2px 4px 0px rgba(0,0,0,.2);
  display: flex;
  align-items: center;
  justify-content: center;
}
[class*="btn_"][class*="recruit"][class*="large"]{
  height: 54px;
  min-width: 300px;
  font-size: 14px;
}

/* ! 求人詳細ページ ============================== */
.area_recruit{
/* 	max-width: 800px; */
}

/* リスト */
.list_recruit{
	padding: 0px;
	border: solid 1px #DDE1E7;
}
.list_recruit li{
	display: flex;
}
.list_recruit li + li{
	border-top: solid 1px #DDE1E7;
}
.list_recruit .ttl{
	font: 600 14px/1.5em '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic' , sans-serif;
	margin: 0;
	padding: 20px;
}
.list_recruit .description{
	font: 500 14px/1.5em '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic' , sans-serif;
	margin: 0;
}
.head_recruit{
	flex: 0 0 140px;
	background: #F7F4F7;
}
.body_recruit{
	flex: 1 1 auto;
	min-width: 10px;
	padding: 20px;
}
.list_recruit .map{
	position: relative;
	width: 100%;
	height: 0;
	padding-top: 50%;
	margin: 10px 0 0 0;
}
.list_recruit .map iframe{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
@media screen and (max-width: 560px){
  .list_recruit li{
    display: block;
  }
  .list_recruit .ttl{
    padding: 10px;
  }
  .body_recruit{
    padding: 10px;
  }
}


.certificated_flg_batch {
  background-color: #E24091;
  color: #fff !important;
  padding: 4px 8px;
  font-size: 10px;
  margin: 0 10px;
  border-radius: 2px;
  display: inline-block;
}

/* 小顔 */
[class*="tag_"][class*="line"][class*="pink"]{
  border: 1px solid #e6398f;
  color: #e6398f;
  padding: 3px 10px;
  display: inline-block;
}
[class*="tag_"][class*="line"][class*="min"]{
  padding: 2px 8px;
}


/* ! YouTubeチャンネル ———————————————————————————————————————————————————————————— */
.list_youtube_channel_col{
  display: flex;
  flex-wrap: wrap;
  padding: 0;
  margin: -10px;

}
.list_youtube_channel_col > li{
  width: 25%;
  padding: 10px;
}
.list_youtube_channel_col .img{
  margin: 0 0 10px;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
}
.list_youtube_channel_col .img:before{
  content: "";
  display: block;
  width: 100%;
  padding-top: 60%;
}
.list_youtube_channel_col .ttl {
  font: 600 18px/1.3em '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic' , sans-serif;
  margin: 0 0 10px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.list_youtube_channel_col .description {
  font: 400 13px/1.4em '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic' , sans-serif;
  overflow: hidden;
  max-height: 36px;
}
.list_youtube_channel_col .area_blog_info{
  display: block;
  margin: 10px 0 0;
}
.list_youtube_channel_col .date {
  color: #aaa;
  font: 300 13px/1em '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic' , sans-serif;
  margin: 0;
}
@media screen and (max-width: 960px){
  .list_youtube_channel_col{
    margin: -5px;
  }
  .list_youtube_channel_col > li{
    width: 33.3333%;
    padding: 5px;
  }
  .list_youtube_channel_col .ttl{
    font-size: 16px;
  }
}
@media screen and (max-width: 640px){
  .list_youtube_channel_col{
  }
  .list_youtube_channel_col > li{
    width: 50%;
  }
}
@media screen and (max-width: 480px){
  .list_youtube_channel_col .ttl{
    font-size: 14px;
  }
}