@charset "utf-8";
/***********************************
PC STYLES
***********************************/
.wrap {
  margin-right: auto !important;
  margin-left: auto !important;
}

img {
  max-width: 100%;
  height: auto;
}

#sidebar #sidebar_info p {
  margin: 0;
}

#sidebar #sidebar_info h5 {
  font-weight: 400;
}

.insta_icon_area {
  display: none;
  position: fixed;
  top:15px;
  right: 10px;
  z-index: 9999;
}

.menu_btn {
  display: none;
  width: 40px;
  height: 40px;
  position: fixed;
  top: 10px;
  left: 10px;
  /*border: 1px dashed;*/
  cursor: pointer;
  z-index: 100;
}

.menu_btn span {
  width: 30px;
  height: 4px;
  background: #005BAB;
  position: absolute;
  top: 19px;
  left: 5px;
}

.menu_btn span:after, .menu_btn span:before {
  content: "";
  width: 100%;
  height: 4px;
  background: #005BAB;
  position: absolute;
  display: block;
}

.menu_btn span:after {
  top: 8px;
}

.menu_btn span:before {
  bottom: 8px;
}

.btn__text {
  position: absolute;
  bottom: -5px;
  text-align: center;
  font-weight: 700;
  color: #000;
  font-size: 12px;
  width: 100%;
}

.to-right {
  left: 0 !important;
}

iframe {
  max-width: 100%;
}

.tel__s {
  display: none;
  max-width: 263px;
  margin: 0 auto 10px;
  color: #0059AA;
  text-align: center;
  width: 96%;
}

.tel__s img {
  max-width: 100%;
}

.tel__s p {
  font-size: 15px;
  margin: 0;
  line-height: 1.2em;
}

#sidebar .tab_change_on {
  display: none;
}

.pc { display: block !important; }
.sp { display: none !important; }
.pc_only { display: block !important; }
.sp_only { display: none !important; }

/***********************************
TABLET STYLES
***********************************/

@media screen and (max-width: 940px){
  .wrap {
    width: 600px !important;
    padding: 0 !important;
  }
  #main_image {
    margin: 0 auto 20px;
  }
  #header_menu {
    width: 100%;
    height: 100%;
    position: fixed;
    overflow-y: scroll;
    border-right: 4px solid #005BAB;
    background: white;
    padding: 48px 0;
    box-sizing: border-box;
    top: 0;
    left: -100%;
    transition: .3s ease;
    z-index: 50;
  }
  .insta_icon_area {
    display: block;
  }
  .menu_btn {
    display: block;
  }
  #header_menu li {
    display: block;
    float: none;
  }
  #header_menu li a {
    margin: 0 auto 15px;
    background: none !important;
    color: #333;
  }
  #header_menu li a span {
    position: relative;
    text-indent: 0;
  }

  #header_menu .children-menu {
    display: block;
    background: none;
    position: relative;
    padding: 0 15px 15px;
  }

  #header_menu .children-menu li {
    border: none;
    position: relative;
  }
  #header_menu .children-menu li:before {
    content: "";
    display: block;
    width: 4px;
    height: 4px;
    border-bottom: 2px solid #000;
    border-right: 2px solid #000;
    position: absolute;
    left: 5px;
    top: 0px;
    bottom: 0px;
    margin: auto;
    transform: rotate(-45deg);
  }

  #main, #sidebar {
    max-width: 100%;
    margin: 10px auto;
    display: block;
    float: none;
  }
  #sidebar #sidebar_info {
    overflow: hidden;
  }
  #header h2 {
    display: none;
  }
  body {
    background: none;
    overflow-x: hidden;
    margin: 0;
    padding:0;
  }
  #wrapper {
    overflow: hidden;
    width: 100%;
  }
  #header {
    margin-top: 30px;
    background: none;
    border-bottom: 4px solid #005BAB;
    overflow: hidden;
  }
  #header h1 {
    position: relative;
    max-width: 400px;
    height: 70px;
    width: 96%;
    margin: 0 auto 20px;
    top: auto;
  }
  #header .tel {
    position: relative;
    bottom: auto;
    text-align: center;
  }
  #footer_menu {
    display: none;
  }
  #footer {
    /* background: none; */
    /* border-top: 2px solid #AAD257; */
  }
  #footer_text {
    height: auto;
    padding: 10px 0;
  }
  table input {
    width: 100%;
  }
  table textarea {
    width: 100%;
  }
  #main .department {
    max-width: 424px;
    margin: 0 auto 20px;
  }
  #main .department li {
    margin-bottom: 10px !important;
  }
  .sidebar_section {
    max-width: 260px;
    margin: 0 auto 10px;
  }
  #header_menu li a span {
    display: block;
    font-size: 1.8em;
    padding: 10px;
    height: 1.8em;
    line-height: 1.8em;
    text-indent: 0px;
  }
  #header_menu li a {
    margin: 0;
    background: none !important;
    color: #333;
    text-decoration: none;
    width: auto !important;
    height: auto;
    display: block;
    position: relative;
  }
  #header_menu li {
    display: block;
    float: none;
    border-bottom: 1px solid;
  }
  #main.top .information img {
    float: none;
    display: block;
    margin: 0 auto 20px;
    width: inherit;
  }

  .pc { display: none !important; }
  .sp { display: block !important; }

  #sidebar {
    width: 100%;
  }

  #sidebar img {
    display: block;
    margin: 0 auto 10px;
  }

  #sidebar .side_inner_contents {
    display:flex;
    justify-content: space-around;
  }

  #sidebar .side_inner_contents .l_box {
    width: 49%;
  }

  #sidebar .side_inner_contents .r_box {
    width: 49%;
  }

  #sidebar .side_inner_contents .ex1 img  {
    margin: 10px auto 16px  !important;
  }
  #sidebar .side_inner_contents .ex2 {
    text-align: center;
  }
  #sidebar .side_inner_contents .ex3 {
    text-align: center;
  }
  #sidebar .side_inner_contents .ex4 .text {
    margin-top: 40px;
  }

  #sidebar .tab_change_off {
    display: none;
  }

  #sidebar .tab_change_on {
    display: block;
    width: 450px;
  }

  #sidebar .dr_banner_area {
    display: flex;
    height: 230px;
    justify-content: space-between;
    width: 500px;
    margin: 0 auto 20px;
    
  }
  #sidebar .dr_banner_area .ex1 {
    display: flex;
    flex-flow: column;
    width: 230px;
  }

  #sidebar .dr_banner_area .ex1 .no1{
    flex: 1;
  }

  #sidebar .dr_banner_area p,
  #sidebar .dr_banner_area img {
    margin-bottom: 0;
  }

  #sidebar .side_banner_area {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 500px;
    margin: 0 auto;
  }

  #sidebar .dr_banner_area img,
  #sidebar .side_banner_area img {
    width: 230px;
  }

  /*20220207*/  
  #sidebar .media_info_area h3{
    position: relative;
    margin-bottom: 14px;
    padding: 0 0 0 26px;
    height: 45px;
    color: #fff;
    font-size: 1.3em;
    font-weight: 800;
    line-height: 45px;
    background: url(../images/h3_bg.png) left no-repeat;
  }


  #sidebar .media_info_area .medias {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }

  #sidebar .media_info_area .medias .texit{
    width:100%;
  }
}

/***********************************
SMART PHONE STYLES
***********************************/
@media screen and (max-width: 700px){
  
  .pc_only { display: none !important; }
  .sp_only { display: block !important; }
  .sp_full { width: inherit !important;}
  
  
  
  
  .wrap {
    width: 96% !important;
  }

  #main h3 {
    height: inherit;
    min-height: 45px;
    line-height: inherit;
    background-size: cover;
    display: flex;
    align-items: center;
  }
  #main h4 {
    font-size: 15px;
  }
  #main.other dl.faq dt {
    margin: 0 0 10px 0;
    padding: 95px 0 0 0px;
    min-height: 68px;
    background: url(../images/dock_img_q.png) left top no-repeat;
  }
  #main.other dl.faq dd {
    margin: 0 0 30px 0;
    padding: 100px 0px 0 0;
    min-height: 68px;
    background: url(../images/dock_img_a.png) left top no-repeat;
  }
  .tel__s {
    display: block;
  }
  .alignright, .alignleft {
    float: none;
    margin: 0 auto 20px;
    display: block;
  }
  #main.top .department {
    padding: 0;
    color: #806F62;
    overflow: hidden;
    margin: 0 auto 20px;
    width: 100%;
  }
  #main.top .department li.list_2 {
    margin: 0;
  }
  #header .tel {
    bottom: 0;
    top: auto;
  }
  #header h1 {
    position: relative;
    display: block;
    margin: 47px auto 20px;
    max-width: inherit;
    width: 96%;
    top: auto;
    background: url(../images/logo.png) center no-repeat;
    background-size: contain;
  }
  .service > *, .service_2 > * {
    float: none !important;
    display: block !important;
    margin: 0 auto 10px !important;
    text-align:center;
  }
  
  #main > .inner {
    padding: 0;
  }
  
  /*20220126 prera*/

  .flex_1 {
    justify-content: space-around;
  }

  .flex_1 > *{
    margin-bottom: 20px;
  }

  .eye_care_item_area table.price_1 td {
    width: 34%;
  }

/***********************/ 

.flex_box.ver2 li,  
.flex_box.ver3 li,
.flex_box.ver4 li {
  width:100%;

}

.flex_box li.arrow_style {
  padding-bottom:30px;

}

.flex_box li.arrow_style::after {
  top:inherit;
  bottom: -25px;
  right: inherit; 
  border: 25px solid;
  border-left: 25px solid transparent;
  border-right: 25px solid transparent;
  border-bottom: 25px solid transparent;
  left: 50%;
  margin-left: -25px;
}







/***********************/ 

/*20220202*/

#sidebar .side_inner_contents {
  display:inherit;
}

#sidebar .side_inner_contents .l_box {
  width: inherit;
}

#sidebar .side_inner_contents .r_box {
  width: inherit;
}

#sidebar .side_inner_contents .ex1 img  {
  margin: 0 auto 16px  !important;
}
#sidebar .side_inner_contents .ex2 {
  text-align: center;
}
#sidebar .side_inner_contents .ex3 {
  text-align: center;
}
#sidebar .side_inner_contents .ex4 .text {
  margin-top: 0;
}

#sidebar .tab_change_off {
  display: block;
}

#sidebar .tab_change_on {
  display: none;
}


#sidebar .dr_banner_area {
  display: inherit;
  height: inherit;
  width: inherit;
  text-align: center;
}
#sidebar .dr_banner_area .ex1 {
  display: inherit;
  height: inherit;
  width: inherit;
  margin: 0 auto;
}

#sidebar .dr_banner_area p {
  margin-bottom: 20px;
}

#sidebar .side_banner_area {
  display: inherit;
  width: inherit;
}

#sidebar .side_banner_area img {
  width: 100%;
  max-width: 460px;
}

#sidebar .dr_banner_area img {
  width: 100%;
  max-width: 210px;
}

/*20220203*/
#main.top .service li {
  width: 100%;
  box-sizing: border-box;
}

#main.top .service_2 li {
  width: 100%;
}

.eye_care_item_img li {
  width: 48%;
  margin-bottom: 20px;

}
#sidebar_info .sidebar_tel_img img {
  width: 100%;
  max-width: 320px;
}

#sidebar_info .time img {
  width: 100%;
  max-width: 420px;
}

#sidebar_info img.map {
  width: 100%;
  max-width: 420px;
}

/*20220209 beauty*/

#main .beauty_list_new {
  display: inherit;
}

#main .beauty_list_new li {
  width: 100%;
}

#main .item1_area_part1 .ex1 .ex1_1 {
  width: 140px;
  float: none;
  margin: 0 auto;
  
  
}

#main .item1_area_part1 .ex1 .ex1_2 {
  left: 20px;
  top: 50px;
  width: 120px;
}

#main .item1_area_part1 .ex1 .ex1_2 {
  position: absolute;
  right: 145px;
  width: 120px;
  left: 20px;
  top: 50px;
}

#main .item1_area_part1 .ex2 {
  padding-top: 0;
}

#main .item1_area_part1 ul {
  margin-left: 0;
  width: 100%;
}

#main .item1_area_part2 p.message {
  font-size: 1.1em;
}

#main .item1_area_part2 ul li {
  width: 100%;
}

#main .item1_area_part2 ul.circle_area li {
  width: 60%;
}

#main .item2_area .part_1 {
  background-size: 80px;  
}

#main .item2_area .part_2 {
  background-size: 80px;  
}

#main .item2_area .item2_area_contents div {
  float: none;
  text-align: center;
  margin-bottom: 20px;
}

#main .item2_area .item2_area_contents dl {
  width: inherit;
}

#main .item3_area .part_1 p {
  padding: 0 1em;
}

#main .item3_area .part_4 .part_4_contents .photo_area {
  width: inherit;
}

main .item3_area .part_4 .part_4_contents .photo_area .ex1 {
  float: none;
  text-align: center;
}

main .item3_area .part_4 .part_4_contents .photo_area .ex2 {
  float: none;
  text-align: center;
}


#main .item3_area .part_4 .part_4_contents .photo_area_large {
  width: inherit;
  margin-top: 20px;
  margin-bottom: 20px;
}

#main .item3_area .part_4 .part_4_contents .photo_area_large .ex1 {
  text-align: center;
  float: none;
}


#main .item3_area .part_4 .part_4_contents .photo_area_large .ex2 {
  float: none;
  text-align: center;
}

#main.allergology .ex1 li {
  width: 100%;
  margin-bottom: 20px;
}
/*photofacial*/ 

#main.photofacial .ex1 li.arrow_style::after {
  border-left: 25px transparent solid!important;  
  border-top: 25px #ff6c71 solid!important;
  margin-top: inherit!important;
}


}

@media screen and (max-width: 480px){
  #main.top .department li {
    margin: 0 auto 10px!important;
    float: none;
  }
}