@media screen and (min-width:768px){
  .sp_only{
    display: none!important;
  }
}/*@media screen and (min-width:768px){*/

@media screen and (max-width:767px){
  .sp_hide{
    display: none!important;
  }


  main{
    padding-top:55px;
  }
  
  
  /*
  ------------------------------------
  アニメーション関係
  ------------------------------------
  */

  
  /*
  ------------------------------------
  共通パーツ
  ------------------------------------
  */
  
  .container{
    width:92%;
    max-width: 450px;
    margin:0 auto;
    padding:0 ;
  }
  
  
  /*楕円形のボタン*/
  .common_button{
    width: 400px;
    max-width: 100%;
    height: 60px;
    border-radius: 33px;
  }
  
  .common_button::after{
    width: 22.5px;
    height: 5px;
    right:20px;
    bottom:26px;
  }


  /*ハーフボーダー付きのセクションタイトル*/
  .common_sec_title_half_bottom_border{
    font-size: 24px;
    line-height: 1.5;
    text-align: center;
  }

  .common_sec_title_half_bottom_border::after{
    width: 70px;
    height: 2px;
    margin-top:24px;
  }

  /*対応症例関係ページ下部のテキスト*/
  .common_case_bottom_text_area{
    margin-top: 80px;
    padding:40px 0;
    font-size: 18px;
    line-height: 2;
  }


  /*水色のカッコのデコレーション*/
  .common_border_deco{
    position: absolute;
    z-index: 1;
  }

  .common_border_deco .border_deco_inner{
    width:40px;
    height:40px;
  }

  .common_border_deco .border_deco_inner::before{
    height:1px;

  }

  .common_border_deco .border_deco_inner::after{
    width:1px;
  }

  .common_border_deco01{
    top:10px;
    left:10px;
  }

  .common_border_deco01 .border_deco_inner::before{
    top:10px;
  }
  .common_border_deco01 .border_deco_inner::after{
    left:10px;
  }

  .common_border_deco02{
    bottom:10px;
    right:10px;
  }
  .common_border_deco02 .border_deco_inner::before{
    bottom:10px;
  }
  .common_border_deco02 .border_deco_inner::after{
    right:10px;
  }
  
  /*サポート事例のモーダル*/


  .common_support_modal .support_modal_block{
    width: 330px;
  }


  .common_support_modal .support_modal_contents{
    padding:32px 24px;
  }


  .common_support_modal .support_modal_close{
    width: 35px;
    height:35px;
    top:-45px;
    right:0;
  }

  .common_support_modal .support_modal_close .bar{
    height:3px;    
  }

  .common_support_modal .support_modal_close .bar01{
    transform: translateY(2px) rotate(-45deg);
  }
  .common_support_modal .support_modal_close .bar02{
    transform: translateY(-1px) rotate(45deg);
  }


  .common_support_modal ul li + li{
    margin-top: 16px;
  }

  .common_support_modal ul a{
    font-size: 16px;
  }

  .common_support_modal ul a::before{
    width: 6px;
    height: 6px;
    margin-right:6px;
    margin-top: 9px;
  }


  /*
  ------------------------------------
  ヘッダー
  ------------------------------------
  */
  header{
    position: fixed;
    top:0;
    left:0;
    width:100%;
    z-index: 20;
  }
  

  header .header_line01 .header_logo{
    margin-left: 12px;
  }
  
  header .header_line01 .header_logo img{
    width:calc(185 / 375 * 100vw);
    max-width: 230px;
  }
  
  header .header_line01 .header_logo .logo_text{
    margin-left: 3px;
    font-size: 10px;
    transform: scale(0.9);
    transform-origin: left;
    letter-spacing: 0;
    font-feature-settings: 'palt';
  }
  
  header .header_line01 .header_right{
    display: none;
  }

  header .drawer_menu_open{
    width:55px;
    height:55px;
  }

  header .drawer_menu_inner{
    width: 27px;
    height:21px;
  }
  
  header .drawer_menu_open .bar{
    height:1px;
  }
  
  header .drawer_menu_open.active .bar1 {
    transform: translateY(9.8px) rotate(-45deg);
  }
  header .drawer_menu_open.active .bar3 {
    transform: translateY(-9.8px) rotate(45deg);
  }


  header .header_line02{
    display: none;
  }


  #drawer_menu .drawer_frame{
    padding:70px 15px 60px;
  }


  
  #drawer_menu .parent_link{
    padding:24px 0;
    font-size: 14px;
  }

  #drawer_menu .link_flex{
    margin-top: 30px;
  }

  #drawer_menu .link_flex .link{
    width: 49%;
    height: 45px;
    font-size: 12px;
  }

  #drawer_menu .link_flex .link.form:before{
    width: 20px;
    height: 23.5px;
    margin-right: 12px;
  }

  #drawer_menu .link_flex .link.medical:before{
    width: 20px;
    height: 24px;
    margin-right: 12px;
  }

  #drawer_menu .button_list{
    margin-top: 16px;
  }

  #drawer_menu .button_list li{
    max-width: 100%;
  }

  #drawer_menu .button_list li + li{
    margin-top: 10px;
  }

  #drawer_menu .recruit_banner{
    width: 290px;
    height: 80px;
    border-radius: 3px;
    position: relative;
    background-color: #034e95;
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
    margin:36px auto 0;
  }


    /*
  ------------------------------------
  ページ下部固定メニュー
  ------------------------------------
  */

  #fix_bottom_menu{
    position: fixed;
    bottom:0;
    left:0;
    width:100%;
    z-index: 12;
    display: flex;
  }

  #fix_bottom_menu .button{
    height:55px;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
  }

  #fix_bottom_menu .tel{
    width: 100%;
    background-color: #36a9df;
    font-weight: bold;
    line-height: 1;
    color: #fff;
  }

  #fix_bottom_menu .tel::before{
    content:'';
    width:23px;
    height:23px;
    background-image: url('../img/common/icon_tel_white.png');
    flex-shrink: 0;
    margin-right: 10px;
  }

  #fix_bottom_menu .button.contact,
  #fix_bottom_menu .button.line{
    flex-shrink: 0;
    width:55px;
  }

  #fix_bottom_menu .button.contact{
    background-color: #034e95;
  }
  #fix_bottom_menu .button.contact img{
    width:22px;
  }
  
  #fix_bottom_menu .button.line{
    background-color: #00b900;
  }
  #fix_bottom_menu .button.line img{
    width:25px;
  }

      /*
  ------------------------------------
  モーダル
  ------------------------------------
  */

  .common_modal{
    position: fixed;
    top:0;
    left:0;
    opacity: 0;
    pointer-events: none;
    width:100%;
    height: 100vh;
    height: 100svh;
    overflow-y: auto;
    background-color: rgba(0,0,0,0.8);
    z-index: 100;
    padding:80px 0;
    transition-duration: 0.7s;
  }

  .common_modal.show{
    opacity: 1;
    pointer-events: auto;
  }

  .common_modal .modal_inner{
    min-height:100%;
    display: flex;
    justify-content: center;
    align-items: center;
  }

  .common_modal .modal_frame{
    position: relative;
    width:345px;
    background-color: #fff;
    padding:32px 20px 40px;
  }

  .common_modal .modal_close{
    position: absolute;
    cursor: pointer;
    right:0;
    bottom:calc(100% + 10px);
    display: flex;
    justify-content: center;
    align-items: center;
  }

  .common_modal .modal_close img{
    width:20px;
  }


  .common_modal .modal_head{
    display: flex;
    align-items: center;
    flex-direction: column;
    font-size: 23px;
    font-weight: bold;
    line-height: 1.53;
    color: #034e95;
  }

  .common_modal .modal_head::after{
    content:'';
    width: 40px;
    height: 3px;
    background-color: #36a9df;
    margin-top: 12px;
  }

  .common_modal .modal_text{
    margin-top: 10px;
    font-size: 14px;
    font-weight: bold;
    line-height: 1.79;
    letter-spacing: 0.08em;
    text-align: center;
    color: #333839;
  }
  .common_modal .modal_text .time{
    display: block;
    text-align: center;
    font-weight: 500;
    font-size: 13px;
    margin-top: 6px;
  }

  .common_modal .modal_guide{
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 14px;
    font-weight: bold;
    line-height: 1.79;
    text-align: center;
    color: #034e95;
    
  }

  .common_modal .modal_guide_tel{
    margin-top: 20px;
  }
  .common_modal .modal_guide_tel img{
    width: 252px;
  }

  .common_modal .modal_guide_contact{
    margin-top: 32px;
  }
  .common_modal .modal_guide_contact img{
    width: 192px;
  }


  .common_modal .modal_button_list{
    margin-top: 12px;
  }

  .common_modal .modal_button{
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    border-radius: 3px;
  }


  .common_modal .modal_button img{
    width:100%;
  }

  .common_modal .modal_button + .modal_button{
    margin-top: 15px;
  }


  .common_modal .modal_button_contact{
    font-size: 21px;
    font-weight: bold;
    line-height: 1;
    letter-spacing: 0.04em;
    text-align: center;
    color: #fff;
    height:65px;
  }

  .common_modal .modal_button_contact::after{
    content:'';
    width:30px;
    height:6px;
    background-image: url('../img/common/arrow_half_right_white.png');
    background-position: right;
    position: absolute;
    right:20px;
    top:0;
    bottom:0;
    margin:auto;
    transform: translateY(5px);
  }

  .common_modal .modal_button_contact01{
    background-color: #36a9df;
  }
  .common_modal .modal_button_contact02{
    background-color: #034e95;
  }
  /*
  ------------------------------------
  フッター
  ------------------------------------
  */
  
  footer{
    padding:60px 0 80px;  
  }
  
  footer .footer_logo{
    width:300px;
    max-width: 90%;
    display: block;
    margin: 0 auto;
  }

  
  footer ul{
    margin-top: 32px;
  }
  
  footer ul .slash{
    margin:0 12px;
    width: 2px;
    height: 14px;
  }
  
  footer ul li a{
    line-height: 1;
    color: #fff;
    font-size: 14px;
  }
  
  footer .copy{
    margin-top: 60px;
    font-size: 10px;
  }

  /*
  ------------------------------------
  ページ下部のお問い合わせ
  ------------------------------------
  */
  
  .common_contact_section{
    padding:70px 0 80px;
  }
  
  .common_contact_section .back_title{
    width:340px;
    top: -4px;
  }

  
  .common_contact_section .sec_title{
    font-size: 18px;
  }
  
  .common_contact_section .p01{
    margin-top: 16px;
    font-size: 14px;

  }
  
  .common_contact_section .flex{
    margin-top: 40px;
  }
  
  .common_contact_section .box{
    width: 100%;
    min-height: auto;
    padding: 32px 12px;
    border-radius: 20px;
  }

  .common_contact_section .box + .box{
    margin-top: 32px;
  }
  
  .common_contact_section .box .box_head{
    font-size: 20px;
    gap:0 16px;
    white-space: nowrap;
  }
  
  .common_contact_section .box .box_head::before,
  .common_contact_section .box .box_head::after{
    width: 50px;
    height: 2px;
  }
  
  .common_contact_section .box .tel_line{
    margin-right: 0;
    justify-content: center;
    margin-top: 40px;
  }
  
  .common_contact_section .box .tel_line::before{
    width: 24px;
    height: 24px;
    margin-right: 12px;
  }
  
  .common_contact_section .box .tel_num{
    font-size: 32px;
  }
  
  .common_contact_section .box .tel_num .ruby{
    font-size: 14px;
    top: -18px;
  }
  
  .common_contact_section .box .button{
    width: 90%;
    height: 50px;
    margin: 32px auto 0;
    border-radius: 30px;
  }
  
  .common_contact_section .box .button p{
    font-size: 16px;
    margin-left: 36px;
  }
  
  .common_contact_section .box .button p::before{
    width: 24px;
    height: 16px;
    left:-38px;
  }

  
  .common_contact_section .line_link{
    width: 100%;
    height: auto;
    padding:20px 12px;
    margin:60px auto 0;

  }
  
  .common_contact_section .line_link::before{
    width: 45px;
    height: 43px;
    object-fit: contain;
    margin-right: 16px;
  }
  
  .common_contact_section .line_link p{
    font-size: 20px;
    line-height: 1.2;
  }
  
  /*
  ------------------------------------
  在籍スタッフのセクション
  ------------------------------------
  */
  .common_staff_section{
    padding:80px 0 80px;
  }

  .common_staff_section .common_sec_title_half_bottom_border span{
    margin-top: 12px;
    font-size: 14px;
  }
  .common_staff_section .common_sec_title_half_bottom_border::after{
    margin-top: 20px;
  }

  .common_staff_section .staff_area{
    padding:32px 12px;
    margin-top: 32px;
  }

  .common_staff_section .staff_list{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap:12px 0;
  }

  .common_staff_section .staff_block{
    min-height:120px;
    padding:16px 0;
  }

  .common_staff_section .staff_block .staff_num{
    margin-top: 12px;
    font-size: 24px;
  }

  .common_staff_section .staff_block .staff_num .staff_count{
    font-size: 50px;
    margin-right: 8px;
  }

  .common_staff_section .staff_block.line01{
    width:49%;
  }
  .common_staff_section .staff_block.line01 .staff_kind{
    font-size: 15px;
  }

  .common_staff_section .staff_block.line02{
    width:49%;
  }
  .common_staff_section .staff_block.line02 .staff_kind{ 
    font-size: 15px;
  }

  .common_staff_section .staff_block.line03{
    width:49%;
  }
  .common_staff_section .staff_block.line03 .staff_kind{
    font-size: 15px;
  }

  /*
  ------------------------------------
  トップページ
  ------------------------------------
  */
  
  body.top_body{
    
  }
  
  main.top_main{
  
  }

  
  .top_section .sec_title_set .en_title{
    font-size: 16px;
  }
  
  .top_section .sec_title_set .ja_title{
    font-size: 24px;
    margin-top: 16px;
    text-align: center;
  }
  
  .top_mv_section .mv{
    width:100%;
  } 
  
  .top_about_section{
    padding-top: 80px;
    padding-bottom: 100px;
  } 
  
  .top_about_section .p01{

    margin:28px auto 0;
  }
  
  .top_about_section .about_list{
    margin-top: 40px;
    flex-direction: column;
    align-items: center;
    gap:40px 0;
  }
  
  .top_about_section .about_block{
    width: 580px;
    max-width: 100%;
  }
  
  .top_about_section .about_head{
    padding: 12px 12px;
    font-size: 20px;
    line-height: 1.3;
  }
  
  .top_about_section .about_body{
    padding:16px 24px;
  }
  
  .top_about_section .about_body ul li{
    font-size: 16px;
    line-height: 1.5;
  }
  
  .top_about_section .about_body ul li + li{
    margin-top: 8px;
  }

  .top_about_section .about_body ul li::before{
    width:12px;
    height:13px;
    margin-right: 6px;
    margin-top: 6px;
  }
  
  .top_about_section .arrow_block{
    width: 2px;
    height: 120px;
    bottom:-70px;
  }
  
  .top_about_section .arrow_block .arrow{
    width:2px;
  }
  
  .top_about_section .arrow_block .arrow::after{
    width:2px;
    height:13px;
  }
  
  .top_support_section{
    padding-top: 100px;
    padding-bottom: 80px;
  }
  
  .top_support_section .sec_title{
    font-size: 22px;
    line-height: 1.5;
  }
  
  .top_support_section .support_list{
    margin-top: 48px;
  }
  
  .top_support_section .support_block{
    display: flex;
  }
  
  .top_support_section .support_block + .support_block{
    margin-top: 32px;
    flex-direction: row;
  }
  
  .top_support_section .support_block .support_thumb{
    width: 50%;
    min-height: auto;
  }

  .top_support_section .support_block .support_thumb img{
    object-position: left;
  }
  
  .top_support_section .support_block .support_text_area{
    width: 50%;
    padding: 40px 0;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  
  .top_support_section .support_block .support_head{
    font-size: 15px;
    line-height: 1.33;
  }
  
  .top_support_section .support_block  .support_button{
    margin:16px auto 0;
    max-width: 100%;
    width: 150px;
    height: 23px;
    font-size: 11px;
  }

  .top_support_section .support_block  .support_button::after {
    width: 15px;
    height: 3.5px;
    right: 10px;
    bottom: 6px;
  }
  
  .top_policy_section{
    padding-top: 80px;
    padding-bottom: 64px;
    position: relative;
    overflow: hidden;
  }
  
  .top_policy_section .sec_title_set{
    align-items: flex-start;
    position: relative;
    z-index: 1;
  }

  .top_policy_section .sec_title_set .ja_title{
    text-align: left;
  }
  
  .top_policy_section .back_title{
    top: -6px;
    width: 400px;
  }
  
  .top_policy_section .policy_list{
    margin-top: 56px;
    position: relative;
    z-index: 1;
  }
  
  .top_policy_section .policy_block{
    display: flex;
    align-items:center;
    flex-direction: column;
  }

  
  .top_policy_section .policy_block + .policy_block{
    margin-top: 48px;
  }
  
  
  .top_policy_section .policy_block .policy_text_area{
    width: 100%;
    padding-top: 24px;
  }
  
  .top_policy_section .policy_block .policy_en_title{
    font-size: 18px;
  }
  
  .top_policy_section .policy_block .policy_catch{
    margin-top: 16px;
    white-space: nowrap;
  }
  
  .top_policy_section .policy_block .policy_catch span{
    font-size: 20px;
    line-height: 2.2;
    padding: 3px 6px;
  }
  
  .top_policy_section .policy_block .policy_text{
    margin-top: 16px;
  }
    
  .top_policy_section .sec_border{
    margin: 56px calc(50% - 50vw) 0;
  }
  
  .top_policy_section .button_flex{
    flex-direction: column;
    align-items: center;
    margin-top: 64px;
  }
  
  .top_policy_section .button_flex .button{
    width: 580px;
    height: 100px;
  }  
  
  .top_policy_section .button_flex .button + .button{
    margin-top: 32px;
  }

  .top_policy_section .button_flex .button .radi{
    width: 30px;
    height: 30px;
    right:15px;
  }
  
  .top_policy_section .button_flex .button .radi::after{
    width:15px;
    height:3.5px;
  }

  .top_policy_section .button_flex .button p{
    font-size: 20px;
  }
  
  .top_policy_section .button_flex .button p span{
    font-size: 14px;
  }
  
  .top_policy_section .button_flex .button.beginner p{
    margin-left: 20px;
  }
  .top_policy_section .button_flex .button.beginner p::before{
    width: 24px;
    height: 40px;
    left:-40px;
  }
  
  .top_policy_section .button_flex .button.medical p{
    margin-left: 32px;
  }
  .top_policy_section .button_flex .button.medical p::before{
    width: 30px;
    height: 36px;
    left:-56px;
  }
  
  .top_area_section{
    padding-top: 80px;
    padding-bottom: 80px;  
  }
  
  .top_area_section::after{
    width:240px;
    height:216px;
    top:-50px;
  }
  
  .top_area_section .sec_title_set{
    position: relative;
    z-index: 1;
  }
  
  .top_area_section .p01{
    max-width: 790px;
    margin: 28px auto 0;
  }
  
  .top_area_section .area_list{
    width: 100%;
    max-width: 100%;
    justify-content: space-between;
    flex-wrap: wrap;
    margin: 40px auto 0;
    gap:16px 0;
  }

  .top_area_section .area_list li{
    width:48%;
  }
  
  .top_area_section .area_card{
    width: 100%;
    height: 58px;
    font-size: 18px;
    padding-right: 10px;
  }
  
  .top_area_section .area_card::before{
    width: 18px;
    height: 25px;
    margin-right: 16px;
  }

  
  .top_diary_section{
    padding-top: 80px;
    position: relative;
  }
  

  .top_diary_section .back_title{
    left: -2px;
    top: 100px;
    width: 300px;
  }

  
  .top_diary_section .swiper_area{
    margin: 40px calc(50% - 50vw) 0;
  }
  
  .top_diary_section .diary_button_flex{
    max-width: 450px;
    width:92%;
  }
  
  .top_diary_section .diary_button_flex .diary_button{
    width: 40px;
    height: 40px;
  }
  
  .top_diary_section .diary_button_flex .diary_button::after{
    width: 15px;
    height:3.5px;
  }
  
  .top_diary_section .diary_button_flex .diary_button_prev{
    margin-right:20px;
  }
  
  .top_diary_section .swiper_block{
    width:calc(50% + 160px);
    margin-top:32px;
  }
  
  .top_diary_section .diary_slide{
    width:440px;
    width:280px;
    padding-right: 24px;
  }
  
  .top_diary_section .diary_card .diary_thumb img{
    border-radius: 10px;
  }
  
  .top_diary_section .diary_card .diary_contents{
    margin-top: 12px;
  }

  .top_diary_section .diary_card .diary_category{
    padding:3px 8px;

    font-size: 12px;
  }
  
  .top_diary_section .diary_card .diary_date{
    line-height: 1.3;
    font-size: 14px;
  }
  
  .top_diary_section .diary_card .diary_title{
    padding-bottom: 2px;
    margin-top: 12px;
    font-size: 14px;
  }
  
  .top_diary_section .diary_card .author_flex{
    margin-top: 20px;
  }
  
  .top_diary_section .diary_card .author_thumb{
    width:40px;
    margin-right: 12px;
  }

  .top_diary_section .diary_card .author_job{
    font-size: 13px;
    line-height: 1.3;
  }
  
  .top_diary_section .diary_card .author_name{
    font-size: 16px;
    line-height: 1.3;
    margin-top: 4px;
  }
  
  .top_diary_section .diary_link_button{
    margin:48px auto 0;
  }
  
  .top_link_section{
    padding-top: 80px;
    padding-bottom: 80px;
  }
  
  .top_link_section .link_button_flex{
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    align-items: center;
  }
  
  .top_link_section .link_button{
    width: 580px;
    max-width: 80%;
    height: 80px;
  }

  .top_link_section .link_button + .link_button{
    margin-top: 24px;
  }

  
  .top_link_section .link_button .link_button_en_text{
    height:30px;
    top:-1px;
  }

  .top_link_section .link_button .link_button_text{
    font-size: 14px;
    line-height: 1.43;
  }
  
  .top_link_section .link_button .link_button_text span{
    font-size: 12px;
  }
  
  .top_link_section .link_button .radi{
    width: 30px;
    height: 30px;
    right:10px;
  }
  
  .top_link_section .link_button .radi::after{
    width:15px;
    height:3.5px;
  }
  
  .top_link_section .top_banner{
    width: 1110px;
    max-width: 100%;
    margin:60px auto 0;
  }
  
  .top_link_section .top_banner img{
    width:100%;
  }

  /*
  ------------------------------------
  下層mv
  ------------------------------------
  */

  .page_mv_section{
    padding-top: 64px;
  }

  .page_mv_section::after{
    bottom:120px;
  }
  .page_mv_section .page_title{
    font-size: 26px;

  }

  .page_mv_section .mv_frame{
    margin-top: 24px;
  }

  .page_mv_section .mv{
    height: 200px;
    max-width: 95vw;
  }
  
  /*
  ------------------------------------
  対応症例について 一覧
  ------------------------------------
  */

  body.case_body{
    
  }
  main.case_main{

  }

  .case_mv_section .mv{
    background-image: url('../img/case/case_mv.jpg');
  }

  .case_section{

  }


  .case_about_section{
    padding: 80px 0 80px;
    
  }

  .case_about_section .flex{
    display: flex;
    align-items: center;
    flex-direction: column-reverse;
    margin-left: 0;
  }


  .case_about_section .text_area{
    width:100%;
    margin-top: 32px;
  }

  .case_about_section .case_about_head{
    font-size: 18px;
    padding-bottom: 30px;
  }

  .case_about_section .case_about_head::after{
    width: 70px;
  }

  .case_about_section .case_about_text{
    margin-top: 32px;
    line-height: 2;
  }

  .case_about_section .img_area{
    box-shadow: 15px -15px 0  #e9f1f8;
  }

  .case_contact_section{
    padding-bottom: 72px;
    background-image: url('../img/case/case_contact_bg.jpg');
  }

  .case_contact_section .contact_text_area{
    padding:24px 0 86px;
  }

  .case_contact_section .contact_head{
    font-size: 24px;
  }

  .case_contact_section .contact_text{
    margin-top: 10px;
    font-size: 15px;
    text-align: center;
    line-height: 1.5;
    display: flex;
    justify-content: center;
    white-space: nowrap;
  }

  .case_contact_section .white_box_flex{
    margin:-56px auto 0;
    width: 92%;
    max-width: 450px;
    gap:32px 0;
  }

  .case_contact_section .box{
    width:100%;
    min-height:auto;
  }

  .case_contact_section .tel_box{
    padding:40px 16px;
    display: flex;
    align-items: center;
    display: flex;
    justify-content: center;
    align-items: center;
  }

  .case_contact_section .tel_num{
  
    font-size: 36px;
    width: fit-content;
    margin:0 auto;
  }

  .case_contact_section .tel_num::before{
    width: 30px;
    height: 30px;
    margin-right: 10px;
  }

  .case_contact_section .tel_num .ruby {
    font-size: 14px;
    top: -16px;
  }

  .case_contact_section .tel_time{
    margin-top: 16px;
    font-size: 15px;
  } 

  .case_contact_section .mail_box{
    display: flex;
    justify-content: center;
    align-items: center;
    padding:24px 16px;
  }


  .case_contact_section .mail_button{
    width: 100%;
    height: 80px;
    padding-left: 0;
    justify-content: center;

  }

  .case_contact_section .mail_button::before{
    width: 40px;
    height: 28px;
    margin-right: 12px;
  }

  .case_contact_section .mail_button::after{
    width:8px;
    height:8px;
    bottom:5px;
    right:5px;
  }


  .case_contact_section .mail01{
    font-size: 24px;
  }

  .case_contact_section .mail02{
    margin-top: 8px;
    font-size: 15px;
  }

  .case_list_section{
    padding-top: 80px;
  }

  .case_list_section .list_msg{
    margin-top: 32px;
    font-size: 24px;
    line-height: 1.5;
  }

  .case_list_section .case_list{
    margin-top: 56px;
    gap:70px 0;
  }

  .case_list_section .case_block{
    width:100%;
  }

  .case_list_section .case_text_frame::after{
    width: 55px;
    height: 72px;
  }
  .case_list_section .case_text_block{
    padding:24px 16px;
  }

  .case_list_section .case_text_block ul{
    display: flex;
    flex-wrap: wrap;
    gap:20px 0;
  }

  .case_list_section .case_text_block li{
    width: 100%;
    padding-left: 12px;
    padding-right: 8px;
    font-size: 16px;
  }

  .case_list_section .case_text_block li.half{
    width: 100%;
  }

  .case_list_section .case_text_block li::before{
    width: 6px;
    height: 6px;
    top:10px;
  }

  .case_list_section .case_button{
    height: 60px;
    margin-top: 8px;
    font-size: 20px;
  }

  .case_list_section .case_button::after{
    width:10px;
    height:10px;
    bottom:6px;
    right:6px;
  }


  /*
  ------------------------------------
  対応症例について 詳細
  ------------------------------------
  */


  body.single_case_body{
    
  }
  main.single_case_main{

  }

  .single_case_mv_section .mv{
    background-image: url('../img/case/case_mv.jpg');
  }

  .single_case_section{
    padding-top: 96px;
  }

  .single_case_section .case_title{
    font-size: 24px;

  }

  .single_case_section .case_title::after{
    width: 70px;
    height: 2px;
    margin-top: 24px;
  }

  .single_case_section .case_guide{
    margin:32px auto 0;
    line-height: 2;
  }

  .single_case_section .case_guide p + p{
    margin-top: 10px;
  }

  .single_case_section .symptom_area{
    margin-top: 56px;
    
  }

  .single_case_section .symptom_box{
    padding:24px 16px 40px; 
  }

  .single_case_section .symptom_box .symptom_head{
    font-size: 20px;
  }

  .single_case_section .symptom_box ul{
    margin-top: 24px;
  }
  .single_case_section .symptom_box ul + ul{
    margin-top: 40px;
  }

  .single_case_section .symptom_box ul li{
    padding-left: 18px;
    font-size: 16px;
    line-height: 1.5;
  }

  .single_case_section .symptom_box ul li::before{
    width: 8px;
    height: 8px;
    top:8px;
  }

  .single_case_section .symptom_box ul li + li{
    margin-top: 20px;
  }

  .single_case_section .symptom_box ul.flex{
    display: flex;
    flex-wrap: wrap;
    gap:0;
  }

  .single_case_section .symptom_box ul.flex li{
    width: 100%;
    padding-right: 0;
  }

  .single_case_section .symptom_box ul.flex li + li{
    margin-top: 20px;
  }

  .single_case_section .symptom_box .symptom_remark{
    margin:40px auto 0;
    line-height: 2;
  }

  .single_case_section .about_area{
    margin-top: 100px;
  }



  .single_case_section .about_area .about_text_area{
    width:100%;
    margin-top: 40px;
  }

  .single_case_section .about_area .about_text{
    font-size: 16px;
    line-height: 2;
    padding-top: 20px;
  }

  .single_case_section .about_area .about_text::before{
    width: 70px;
    height: 1px;

  }

  .single_case_section .about_area .about_img_area{
    box-shadow: 15px -15px 0 #e9f1f8;
  }

  .single_case_section .care_area{
    margin-top: 64px;
  }

  .single_case_section .care_area .care_box{
    padding:24px 32px 40px;
  }

  .single_case_section .care_area .care_head{
    font-size: 20px;
  }


  .single_case_section .care_area .care_text{
    margin-top: 20px;
    font-size: 16px;
    line-height: 2;
  }

  .single_case_section .care_area .care_text p + p{
    margin-top: 10px;
  }

  .single_case_section .support_area{
    margin-top: 80px;
  }

  .single_case_section .support_area .support_head{
    font-size:20px;
    line-height: 1.75;
  }


  .single_case_section .support_area .support_link{
    height: 150px;
    margin:40px auto 0;
  }

  .single_case_section .support_area .support_link_text{
    padding:8px 16px;
    min-width: auto;
    font-size: 16px;
    line-height: 1.67;
    margin-right: 5px;
    margin-bottom: 5px;
    box-shadow: 6px 8px 0 rgba(109,193,233,0.4);
  }

  /*
  ------------------------------------
  医療関係者の皆様へ
  ------------------------------------
  */

  body.medical_body{
    
  }
  main.medical_main{

  }

  .medical_mv_section .mv{
    background-image: url('../img/medical/medical_mv.jpg');
  }

  .medical_section{

  }

  .medical_section01{
    padding-top: 72px;
  }

  .medical_section01 .p01{
    font-size:18px;
    line-height: 2;
  }

  .medical_section01 .link_area{
    margin-top: 64px;
    padding:60px 0;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    gap:32px 0 ;
  }

  .medical_section01 .link{
    width: 100%;
    height: 74px;
    font-size: 18px;
  }

  .medical_section01 .link::after{
    width:18px;
    height:10px;
    right:36px;
  }

  .medical_strength_section{
    padding:80px 0 80px;
  } 

  .medical_strength_section .strength_flex{
    margin-top: 72px;
    display: flex;
    align-items: center;
    flex-direction: column-reverse;
  }

  .medical_strength_section .text_area{
    width:100%;
    padding-top: 32px;
  }

  .medical_strength_section .strength_head{
    font-size: 20px;
    padding-bottom: 20px;
    line-height: 1.5;
  }
  .medical_strength_section .strength_head::after{
    width: 70px;
    height: 1px;
  }

  .medical_strength_section .strength_text{
    margin-top: 20px;
    line-height: 2;
  }

  .medical_strength_section .img_area{
    width:100%;
    margin-left: 0;
    box-shadow: 15px -15px 0 #e9f1f8;
  }

  .medical_area_section{
    padding-bottom: 80px;
  }

  .medical_area_section .area_view{
    padding:40px 0 50px;
  }

  .medical_area_section .area_view .area_text_block{
    max-width: 100%;
    min-height: auto;
    margin: 0 auto;
    padding:32px 24px 40px;
    box-shadow: 16px 13px 0 rgba(109,193,233,0.4);
  }

  .medical_area_section .area_view .area_text01{
    font-size: 20px;
  }

  .medical_area_section .area_view .area_text02{
    margin-top: 16px;
    line-height: 2;
  }

  .medical_area_section .area_list{
    margin-top: 48px;
  }

  .medical_area_section .area_block{
    padding:32px 16px 40px;
  }

  .medical_area_section .area_block + .area_block{
    margin-top: 40px;
  }

  .medical_area_section .area_block .area_head{
    padding-bottom: 16px;
  }

  .medical_area_section .area_block .area_head a{
    font-size: 20px;
  }

  .medical_area_section .area_block .area_head a::before{
    width: 15px;
    height: 22px;
    margin-right: 10px;
  }

  .medical_area_section .area_block .station_list{
    margin-top: 24px;
    gap:16px 0;
    flex-direction: column;
  }

  .medical_area_section .area_block .station_list a{
    font-size: 15px;
    line-height: 1.3;
    
  }

  .medical_voice_section{
    padding:80px 0;
  }

  .medical_voice_section .voice_list{
    margin-top: 48px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap:60px 0;
  }

  .medical_voice_section .voice_item{
    width: 100%;
  }

  .medical_voice_section .voice_card{
    padding:32px 24px 24px;
  }

  .medical_voice_section .voice_card::before{
    width:44px;
    height:30px;
    top:-14px;
    left:24px;
  }

  .medical_voice_section .voice_card .voice_name{
    min-width:160px;
    min-height:30px;
    padding:4px 8px;
    font-size:16px;
  }

  .medical_voice_section .voice_card .voice_text_area{
    margin-top: 16px;
  }

  .medical_voice_section .voice_card .voice_title{
    font-size: 20px;
  }

  .medical_voice_section .voice_card .voice_text{
    margin-top: 16px;
    line-height: 2;
  }

  /*
  ------------------------------------
  運営会社Fusion株式会社について
  ------------------------------------
  */

  body.company_body{
    
  }
  main.company_main{

  }

  .company_mv_section .mv{
    background-image: url('../img/company/company_mv.jpg');
  }

  .company_section{

  }

  .company_philosophy_section{
    padding-top: 80px;
  }

  .company_philosophy_section .p01{
    font-size: 22px;
    line-height: 1.94;
    margin-top: 32px;
  }

  .company_philosophy_section .philosophy_box{
    padding:48px 32px;
    margin-top: 50px;
  }

  .company_philosophy_section .philosophy_head{
    font-size: 20px;
    line-height: 1.5;
    white-space-collapse: nowrap;
  }

  .company_philosophy_section .philosophy_list{
    margin:24px auto 0;
  }

  .company_philosophy_section .philosophy_list li{
    font-size: 16px;
    line-height: 1.5;
    padding-left: 24px;

  }

  .company_philosophy_section .philosophy_list li + li{
    margin-top: 20px;
  }

  .company_philosophy_section .philosophy_list li .num{
    font-size: 18px;
  }


  .company_greeting_section{
    padding-top: 80px;
  }

  .company_greeting_section .greeting_flex{
    margin-top: 50px;
    
  }


  .company_greeting_section .text_area{
    width:100%;
  }

  .company_greeting_section .message_head{
    width: 170px;
    height: 34px;
    font-size: 20px;
  }

  .company_greeting_section .message_text{
    margin-top: 24px;
    font-size: 16px;
    line-height: 2;
  }

  .company_greeting_section .sign_flex{
    margin-top: 24px;
    width: 100%;
    flex-direction: column;
    align-items: flex-end;
  }

  .company_greeting_section .sign_flex .sign_career{
    font-size: 18px;
    line-height: 1.67;
  }

  .company_greeting_section .sign_flex .sign{
    font-size: 30px;
    line-height: 1;
    margin-left: 0;
    margin-top: 16px;
  }


  .company_greeting_section .img_area{
    width:100%;
    flex-shrink: 0;
    margin-left: 0;
    margin-top: 32px;
  }


  .company_outline_section{
    padding-top: 80px;
    padding-bottom: 80px;
  }

  .company_outline_section .outline_box{
    border: solid 2px #36a9df;
    padding:40px 24px;
  }

  .company_outline_section .outline_list{
    max-width: 800px;
    margin: 24px auto 0;
    font-size: 14px;
  }

  .company_outline_section .outline_item{
    display: flex;
  }

  .company_outline_section .outline_title{
    width:120px;
    padding:24px 0;
  }
  .company_outline_section .outline_title::before{
    height:1px;
  }

  .company_outline_section .outline_contents{
    padding:24px 0;
  }

  .company_outline_section .outline_contents::before{
    height:1px;
  }

  /*
  ------------------------------------
  精神科訪問看護とは
  ------------------------------------
  */

  body.psychiatric_body{
    
  }
  main.psychiatric_main{

  }

  .psychiatric_mv_section .mv{
    background-image: url('../img/psychiatric/psychiatric_mv.jpg');
  }

  .psychiatric_section{

  }

  .psychiatric_section01{
    padding-top: 80px;
  }

  .psychiatric_section01 .sec_title{
    font-size: 24px;
    line-height: 1.5;
  }

  .psychiatric_section01 .text01{
    margin: 32px auto 0;
    line-height: 2;
  }

  .psychiatric_section01 .text01 p + p{
    margin-top: 10px;
  }

  .psychiatric_service_section{
    padding-top: 80px;
    padding-bottom: 80px;
  }

  .psychiatric_service_section .service_list{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap:22px 0;
    margin-top: 40px;
  }

  .psychiatric_service_section .service_item{
    height: auto;
    min-height: 56px;
    border-radius: 3px;
    padding:4px 4px;
    width: 49%;
    font-size: 15px;
    text-align: center;
  }

  .psychiatric_service_section .service_item01{
    width: 49%;
  }
  .psychiatric_service_section .service_item02{
    width: 49%;
  }
  .psychiatric_service_section .service_item03{
    width: 49%;
  }


  .psychiatric_service_section .service_image_frame{
    margin-top: 50px;
    padding:24px 24px 32px;
    min-height:auto;
  }

  .psychiatric_service_section .service_image{
    width: 100%;
  }

  .psychiatric_service_section .service_image img{
    width: 100%;
  }
  .psychiatric_merit_section{
    padding:80px 0;

  }

  .psychiatric_merit_section .back_text{
    font-size: 120px;
    text-align: center;
    top:-12px;
    display: flex;
    justify-content: center;
  }

  .psychiatric_merit_section .merit_box{
    padding:32px 24px 40px;
    border: solid 2px #36a9df;
  }

  .psychiatric_merit_section .merit_box ul{
    margin-top: 32px;
  }

  .psychiatric_merit_section .merit_box ul li{
    padding-left: 14px;
    font-size: 16px;
    line-height: 1.5;
  }

  .psychiatric_merit_section .merit_box ul li + li{
    margin-top: 20px;
  }

  .psychiatric_merit_section .merit_box ul li::before{
    width: 6px;
    height: 6px;
    top:9px;
  }

  .psychiatric_case_section{
    padding:80px 0;
  }

  .psychiatric_case_section .case_list{
    margin-top: 40px;
    gap:18px 0;
  }

  .psychiatric_case_section .case_list li{
    width: 49%;
    height:auto;
    min-height: 54px;
    font-size: 14px;
    line-height: 1.5;
  }

  .psychiatric_case_section .case_button{
    width: 100%;
    min-height: 80px;
    height: auto;
    margin:32px auto 0;
    font-size: 18px;
  }

  .psychiatric_case_section .case_button::after{
    width:10px;
    height:18px;
    right:16px;
  }

  .psychiatric_case_section .link_list{
    margin-top: 60px;

    gap:24px 0;
  }

  .psychiatric_case_section .link_list li{
    width: 100%;
  }

  .psychiatric_case_section .link{
    width: 100%;
    max-width: 100%;
    height: 150px;
  }

  .psychiatric_case_section .link .link_text{
    min-width: 220px;
    height: 36px;
    padding:0 8px;
    font-size: 20px;
    box-shadow: 6px 6px 0 rgba(109,193,233,0.4);
  }

  /*
  ------------------------------------
  訪問リハビリ
  ------------------------------------
  */

  body.rehabilitation_body{
    
  }
  main.rehabilitation_main{

  }

  .rehabilitation_mv_section .mv{
    background-image: url('../img/rehabilitation/rehabilitation_mv.jpg');
  }

  .rehabilitation_section{

  }

  .rehabilitation_section01{
    padding-top: 80px;
  }

  .rehabilitation_section01 .p01{
    font-size: 20px;
    line-height: 1.5;
  }

  .rehabilitation_case_section{
    padding:80px 0 80px;
  } 

  .rehabilitation_case_section::before{
    content:'';
    width:100%;
    height:calc(100% - 120px);
  }


  .rehabilitation_case_section .message_frame{
    margin-top: 40px;
    height:auto;
    text-align: center;
    padding:32px 0;
  }

  .rehabilitation_case_section .message_frame .message{
    font-size: 24px;
    line-height: 1.5;
  }

  .rehabilitation_case_section .case_list{
    margin-top: 40px;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-right: 0;
    gap:80px 0
  }

  .rehabilitation_case_section .case_block{
    width: 100%;
    padding:24px 16px;
  }


  .rehabilitation_case_section .case_block .case_text_area{
    margin-top: 24px;
  }

  .rehabilitation_case_section .case_block .case_title{
    font-size: 20px;
    line-height: 1.5;
    white-space: nowrap;
    display: flex;
    justify-content: center;
  }

  .rehabilitation_case_section .case_block .case_text{
    margin-top: 16px;
    line-height: 2;
  }

  .rehabilitation_example_section{
    padding:80px 0;
  }

  .rehabilitation_example_section .example_list{
    margin-top: 70px;
  }

  .rehabilitation_example_section .example_block{
    display: flex;
    align-items: center;
    flex-direction: column;
    position: relative;
    padding:32px 24px;
  }

  .rehabilitation_example_section .example_block + .example_block{
    margin-top: 64px;
  }

  .rehabilitation_example_section .example_block .example_num{
    font-size: 60px;
    top:-24px;
  }

  .rehabilitation_example_section .example_block .example_thumb{
    width: 100%;
    flex-shrink: 0;
  }


  .rehabilitation_example_section .example_block .example_text_area{
    width: 100%;
    margin-top: 24px;
  }

  .rehabilitation_example_section .example_block .example_title{
    min-width: 180px;
    min-height:40px;
    border-radius: 40px;
    padding:3px 16px 5px;
    font-size: 18px;
  }

  .rehabilitation_example_section .example_block .example_text{
    margin-top: 16px;
    line-height: 2;
  }

  .rehabilitation_example_section .example_block .example_care_head{
    font-size: 18px;
    margin-top: 12px;
  }


  .rehabilitation_example_section .example_block .example_care_head p{
    padding:0 24px;
  }

  .rehabilitation_example_section .example_block:nth-child(odd) .example_thumb{
    margin-right: 0;
  }
  .rehabilitation_example_section .example_block:nth-child(odd) .example_num{
    left:-6px;
  } 

  .rehabilitation_example_section .example_block:nth-child(even){
    flex-direction: column;
  }
  .rehabilitation_example_section .example_block:nth-child(even) .example_thumb{
    margin-left: 0;
  }
  .rehabilitation_example_section .example_block:nth-child(even) .example_num{
    right:-6px;
  } 

  .rehabilitation_staff_section{
    padding:80px 0;
  }

  .rehabilitation_staff_section .flex{
    display: flex;
    align-items: center;
    flex-direction: column;
    margin-top: 40px;
  }

  .rehabilitation_staff_section .text_area{
    line-height: 2;
  }

  .rehabilitation_staff_section .text_area p + p{
    margin-top: 10px;
  }

  .rehabilitation_staff_section .img_area{
    flex-shrink: 0;
    width: 100%;
    margin-left: 0;
    margin-top: 40px;
  }


  .rehabilitation_staff_section .staff_name_box{
    right:-24px;
    bottom:-24px;
    min-width: 210px;
    min-height: 100px;
    padding-left: 40px;
  }

  .rehabilitation_staff_section .staff_job{
    font-size: 16px;
    line-height: 1.67;
  }

  .rehabilitation_staff_section .staff_name{
    margin-top: 10px;
    font-size: 24px;
    line-height: 1;
  }

  /*
  ------------------------------------
  よくある質問
  ------------------------------------
  */

  body.faq_body{
    
  }
  main.faq_main{

  }

  .faq_mv_section .mv{
    background-image: url('../img/faq/faq_mv.jpg');
    background-position: right;
  }

  .faq_section{

  }

  .faq_section01{
    padding-top: 80px;
  }


  .faq_section01 .faq_head{
    font-size: 20px;
    line-height: 1.5;
  }

  .faq_section01 .faq_text{
    margin-top: 32px;
    line-height: 2;
  }

  .faq_section01 .faq_link_area{
    margin-top: 60px;
    padding:60px 0;
  }


  .faq_section01 .faq_link_list{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap:24px 0;
    
  }

  .faq_section01 .faq_link_list li{
    width: 100%;
  }

  .faq_section01 .faq_link{
    width: 100%;
    height: 70px;
    line-height: 1.44;
    padding-right: 8px;
  }

  .faq_section01 .faq_link::after{
    width: 12px;
    height: 8px;
    right: 16px;
  }

  .faq_list_section{
    padding:80px 0;
  }

  .faq_list_section .faq_area + .faq_area{
    margin-top: 100px;
  }

  .faq_list_section .faq_head{
    padding-bottom: 12px;
    font-size: 20px;
    line-height: 1.2;
  }

  .faq_list_section .faq_head::before{
    width: 2px;
    height: 30px;
    margin-right: 16px;
  }

  .faq_list_section .faq_list{
    margin-top: 40px;
  }

  .faq_list_section .faq_block + .faq_block{
    margin-top: 40px;
  }

  .faq_list_section .faq_question{
    padding:12px;
  }

  .faq_list_section .faq_question::before{
    width: 40px;
    height: 40px;
    margin-right: 10px;
    font-size: 20px;
  }

  .faq_list_section .faq_question_text{
    font-size: 16px;
    padding-top: 8px;
    line-height: 1.75;
  }

  .faq_list_section .faq_answer{
    padding:12px 0 0 12px;
  }

  .faq_list_section .faq_answer::before{
    width: 40px;
    height: 40px;
    margin-right: 10px;
    font-size: 20px;
  }

  .faq_list_section .faq_answer_text{
    font-size: 16px;
    padding-top: 6px;
    line-height: 1.75;
  }


  /*
  ------------------------------------
  サポート事例
  ------------------------------------
  */

  body.support_case_body{
    
  }


  .support_case_mv_section .mv{
    background-image: url('../img/support_case/support_case_mv.jpg');
  }

  .support_case_section{
    padding-top: 80px;
  }

  .support_case_section .p01{
    margin-top: 32px;
    line-height: 2;
  }

  .support_case_section .support_case_list{
    margin-top: 48px;
  }

  .support_case_section .support_case_block{
    padding:32px 16px 40px;
    border: solid 2px #36a9df;
  }

  .support_case_section .support_case_block + .support_case_block{
    margin-top: 64px;
  }

  .support_case_section .support_case_block .support_case_head{
    padding-top: 20px;
    padding-left: 0;
    padding-right: 0;
    padding-bottom: 0;
    flex-direction: column;
    align-items: center;
  }

  .support_case_section .support_case_block .support_case_thumb{
    width: 200px;
    margin-right: 0;
  }

  .support_case_section .support_case_block .support_case_head_info{
    width:100%;
    margin-top: 24px;
    padding-top: 0;
    padding-bottom: 32px;
  }


  .support_case_section .support_case_block .support_case_outline{
    font-size: 18px;
    font-weight: bold;
    line-height: 1.75;

  }

  .support_case_section .support_case_block .info_flex{
    gap:16px;
    font-size: 15px;
    line-height: 1.4;
    margin-top: 20px;
  }

  .support_case_section .support_case_block .support_case_body{
    margin-top: 60px;
  }

  .support_case_section .support_case_block .status_flex{
    display: flex;
    justify-content: space-between;
    position: relative;
    flex-direction: column;
    align-items: center;
  }

  .support_case_section .support_case_block .status_flex::before{
    width: 108px;
    height: 65px;
    transform: rotateZ(90deg);
    left:auto;
    right:calc(50% + 30px);
  }

  .support_case_section .support_case_block .status_block{
    width:100%;
    padding:64px 16px 32px;
    line-height: 2;
  }


  .support_case_section .support_case_block .status_block .status_head{
    width: 100%;
    height: 46px;
    font-size: 20px;
  }

  .support_case_section .support_case_block .status_block.after{
    background-color: #e1effa;
    margin-top: 48px;
  }


  .support_case_section .support_case_block .support_case_img_list{
    margin-top: 32px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    flex-wrap: wrap;
    gap:24px 0;
  }

  .support_case_section .support_case_block .support_case_img_list li{
    width: 100%;
  }
  

    /*
  ------------------------------------
  初めての方へ
  ------------------------------------
  */

  body.first_body{
    
  }
  main.first_main{

  }

  .first_mv_section .mv{
    background-image: url('../img/first/first_mv.jpg');
  }

  .first_section{

  }

  .first_section01{
    padding-top: 64px;

  }

  .first_section01 .p01{
    font-size: 17px;
    line-height: 2;
    text-align: center;
    white-space: nowrap;
  }

  .first_section01 .image_area{
    margin-top: 56px;
    padding:24px 0 40px;

  }

  .first_section01 .image_list{
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    flex-wrap: wrap;
    gap:0;
  }

  .first_section01 .image_list li{
    position: static;
  }


  .first_section01 .image_list .first01{
    width:275px;
    margin-right: 50px;
  }
  .first_section01 .image_list .first02{
    width:200px;
    margin-top: 32px;
    margin-left: 90px;
  }
  .first_section01 .image_list .first03{
    width:256px;
    margin-top: 40px;
    margin-right: 60px;
  }
  .first_section01 .image_list .first04{
    width:238px;
    margin-top: 40px;
    margin-left: 10px;
  }
  .first_section01 .image_list .first05{
    width:201px;
    margin-top: 56px;
    margin-right: 90px;
  }
  .first_section01 .image_list .first06{
    width:256px;
    margin-top: 32px;
    margin-left: 40px;
  }
  .first_section01 .image_list .first07{
    width:196px;
    margin-top: 48px;
    margin-right: 106px;
  }
  .first_section01 .image_list .first08{
    width:210px;
    margin-right: 24px;
    margin-left: 100px;
  }


  .first_link_section{
    padding-top: 80px;
    padding-bottom: 80;
  } 

  .first_link_section .msg_box{
    padding:32px 24px;
    background-position: right;
  }

  .first_link_section .msg_text_box{
    max-width: 100%;
    padding:24px 16px 28px;
    font-size: 14px;
    line-height: 2;
    background-color:rgba(109, 193, 233, 0.8);
  }

  .first_link_section .banner_flex{

    gap:32px 0;
    margin-top: 60px;
  }

  .first_link_section .banner{
    width: 100%;
    padding:24px 48px 24px 16px;
  }

  .first_link_section .banner::after{
    width: 40px;
    height: 40px;
    right:16px;

  }


  .first_link_section .banner .banner_text_box{
    padding:16px;
    min-width:220px;
    min-height: auto;
  }



  .first_link_section .banner .ja_title{
    margin-top: 3px;
    font-size: 18px;
    line-height: 1.3;
  }

  .first_link_section .banner.family .banner_text_box{
    padding-left: 24px;
    padding-right: 24px;
  }

  .first_link_section .banner.flow .banner_text_box{
    padding-left: 24px;
    padding-right: 24px;
  }

  .first_link_section .link_list{
    margin-top: 96px;
  }

  .first_link_section .link_block{
    display: flex;
    align-items: center;
    max-width: 600px;
    margin:0 auto;
  }

  .first_link_section .link_block + .link_block{
    margin-top: 80px;
  }

  .first_link_section .link_block .link_thumb{
    width:100%;
    max-width: 100%;
  }

  .first_link_section .link_block .link_text_area{
    padding-top: 0;
    margin-top: 24px;
  }

  .first_link_section .link_block .link_head{
    font-size: 20px;
    padding-bottom: 16px;
  }

  .first_link_section .link_block .link_head::after{
    width: 70px;
    height: 1px;
  }

  .first_link_section .link_block .link_text{
    margin-top: 16px;
    line-height: 1.75;
  }

  .first_link_section .link_block .link_more{
    margin-top: 24px;
  }

  .first_link_section .link_block .link_more a .radi{
    width: 32px;
    height: 32px;
    margin-left: 16px;
  }
  .first_link_section .link_block .link_more a .radi::after{
    width:16px;
    height:4px;
  }

  .first_link_section .link_block:nth-child(odd){
    flex-direction: column;
  }
  .first_link_section .link_block:nth-child(odd) .link_thumb{
    margin-right: 0;
    box-shadow: -15px -15px 0 #e9f1f8;
  }

  .first_link_section .link_block:nth-child(even){
    flex-direction: column;
  }
  .first_link_section .link_block:nth-child(even) .link_thumb{
    margin-left: 0;
    box-shadow: 15px -15px 0 #e9f1f8;
  }


    /*
  ------------------------------------
  ご家族の皆様へ
  ------------------------------------
  */

  body.family_body{
    
  }
  main.family_main{

  }

  .family_mv_section .mv{
    background-image: url('../img/family/family_mv.jpg');
  }

  .family_section01{
    padding-top: 64px;
    padding-bottom: 64px;
  }

  .family_section01 .sec_head{
    font-size: 24px;
    line-height: 1.94;
  }

  .family_section01 .flex{
    margin-top: 80px;
    margin-left: 0;
  }

  .family_section01 .text_area{
    margin-top: 40px;
  }

  .family_section01 .text_area p{
    position: relative;
    line-height: 1.75;
    padding-top: 32px;
  }

  .family_section01 .text_area p::before {
    width: 70px;
  }

  .family_section01 .img_area{
    box-shadow:15px -15px 0 #e9f1f8;
  }

  .family_anchor_section{
    padding-top: 64px;
    padding-bottom: 64px;
  }

  .family_anchor_section .anchor_list{
    margin-top: 60px;
    gap:20px 0;
    justify-content: space-between;
  }

  .family_anchor_section .anchor_list li{
    width:49%;
  }

  .family_anchor_section .anchor{
    min-height: 60px;
    padding:10px 24px;
    line-height: 1.44;
    font-size: 13px;
    white-space: nowrap;
    
  } 

  .family_anchor_section .anchor::after{
    width:12px;
    height:7px;
    right:6px;
  }

  .family_change_section{
    padding-top: 64px;
  } 

  .family_change_section .change_list{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    flex-direction: column;
    gap:32px 0;
    margin-top: 50px;
  }

  .family_change_section .change_head{
    min-height: 80px;
    padding: 8px 4px;
    font-size: 18px;
    line-height: 1.56;
  }


  .family_change_section .change_body{
    line-height: 1.63;
    
  }

  .family_change_section .change_body ul{
    margin-top: 16px;
  }

  .family_change_section .change_body li{
    padding-left:16px;
  }

  .family_change_section .change_body li::before{
    width: 8px;
    height: 8px;
    top:10px;
  }

  .family_change_section .action_list .change_block,
  .family_change_section .emotion_list .change_block,
  .family_change_section .thinking_list .change_block
  {
    width: 100%;
  }

  .family_change_section .action_list .change_body,
  .family_change_section .emotion_list .change_body,
  .family_change_section .thinking_list .change_body
  {
    padding:30px 30px 20px;
  }

  .family_change_section .action_list .change_thumb,
  .family_change_section .emotion_list .change_thumb,
  .family_change_section .thinking_list .change_thumb
  {
    aspect-ratio: 1/0.48;
  }

  .family_change_section .physical_list .change_block,
  .family_change_section .social_list .change_block
  {
    width: 100%;
  }

  .family_change_section .physical_list .change_body,
  .family_change_section .social_list .change_body
  {
    padding:30px 30px 20px;
  }

  .family_change_section .physical_list .change_thumb,
  .family_change_section .social_list .change_thumb
  {
    aspect-ratio: 1/0.48;
  }

  .family_change_section .drug_list .change_block,
  .family_change_section .looks_list .change_block,
  .family_change_section .communicate_list .change_block,
  .family_change_section .real_list .change_block,
  .family_change_section .stress_list .change_block
  {
    width: 100%;
  }

  .family_change_section .drug_list .change_body,
  .family_change_section .looks_list .change_body,
  .family_change_section .communicate_list .change_body,
  .family_change_section .real_list .change_body,
  .family_change_section .stress_list .change_body
  {
    padding:30px 30px 20px;
  }

  .family_change_section .drug_list .change_thumb,
  .family_change_section .looks_list .change_thumb,
  .family_change_section .communicate_list .change_thumb,
  .family_change_section .real_list .change_thumb,
  .family_change_section .stress_list .change_thumb
  {
    aspect-ratio: 1/0.48;
  }

  .family_text_section{
    padding-top:64px;
    padding-bottom: 64px;
  }

  .family_text_section p{
    font-size: 18px;
    font-weight: 600;
    line-height: 1.75;
  }

  .family_link_section{
    padding-top:64px;
    padding-bottom: 64px;
  }


  .family_link_section .link_guide{
    font-size: 18px;
    line-height: 1.75;
  }

  .family_link_section .link_list {
    margin-top: 56px;
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    align-items: center;
    gap:24px 0;
  }

  .family_link_section .link_list li{
    width: 100%;
  }

  .family_link_section .link {
    aspect-ratio: 1/0.4;
    border-radius: 3px;
  }


  .family_link_section .link .link_text {
    min-width: 250px;
    height: 44px;
    padding: 0 8px;
    font-size: 24px;
    line-height: 1.2;
  }

  /*
  ------------------------------------
  ご利用の流れと料金
  ------------------------------------
  */

  body.flow_body{
    
  }
  main.flow_main{

  }

  .flow_mv_section .mv{
    background-image: url('../img/flow/flow_mv.jpg');
  }

  .flow_section{

  }

  .flow_section01{
    padding-top: 80px;
    padding-bottom:80px;
  }

  .flow_section01 .common_sec_title_half_bottom_border{
    text-align: center;
    font-size: 22px;
    white-space: nowrap;
  }

  .flow_section01 .link_area{
    margin-top: 40px;
    padding:40px 0;
    position: relative;
  }


  .flow_section01 .link_flex{
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
    gap:32px 0;
  }

  .flow_section01 .link_flex .link{
    width: 100%;
    height: auto;
    min-height: 80px;

    font-size: 16px;
  }

  .flow_section01 .link_flex .link::after{
    width:18px;
    height:10px;
    right:20px;
  }


  .flow_section01 .flow_box{
    padding:24px 16px;
    border: solid 2px #36a9df;

  }

  .flow_section01 .flow_box01{
    margin-top: 64px;
  }
  .flow_section01 .flow_box02{
    margin-top: 64px;
  }

  .flow_section01 .flow_box .flow_head{
    font-size: 20px;
    line-height: 1.3;

  }

  .flow_section01 .flow_list{
    margin-top: 40px;
  }

  .flow_section01 .flow_block{
    display: flex;
    align-items: center;
    flex-direction: column-reverse;
    padding-top: 0;
  }

  .flow_section01 .flow_block + .flow_block{
    margin-top: 40px;
  
  }

  .flow_section01 .flow_block::before,
  .flow_section01 .flow_block::after{
    width:2px;
    left:-1px;
    z-index: 1;
  }


  .flow_section01 .flow_block .flow_thumb{
    width:100%;
    max-width: 100%;
  }


  .flow_section01 .flow_block .flow_text_area{
    width:100%;
    padding:24px 16px 32px 40px;
    position: static;
  }

  .flow_section01 .flow_block .flow_title{
    font-size: 20px;
    line-height: 1.3;
  }

  .flow_section01 .flow_block .flow_text{
    margin-top: 16px;
    line-height: 1.75;
  }

  .flow_section01 .flow_block .flow_num{
    width: 50px;
    height: 50px;
    font-size: 24px;
    left:-25px;
  }


  .flow_service_section{
    padding:80px 0;
  }

  .flow_service_section .service_list{
    margin-top: 48px;
    gap:48px 0;
  }

  .flow_service_section .service_block{
    width:100%;
  }

  .flow_service_section .service_head{
    min-height: 60px;
    padding: 12px 24px;
    font-size: 20px;
    line-height: 1.3;
  }

  .flow_service_section .service_body{
    padding:20px 16px 24px;
  }


  .flow_service_section .service_text{
    margin-top: 16px;
    font-size: 17px;
  }

  .flow_graph_section{
    padding-top: 80px;
    padding-bottom: 80px;
  }

  .flow_graph_section .graph_list{
    margin-top: 48px;
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    align-items: center;
    gap:48px 0;

  }

  .flow_graph_section .graph_block{
    width:100%;
  }

  .flow_graph_section .graph_head{
    min-height: 60px;
    padding: 12px 24px;
    font-size: 20px;
    line-height: 1.3;
  }

  .flow_graph_section .graph_body{
    padding:30px 40px 28px;
  }

  .flow_graph_section .graph_frame{
    width: 200px;
  }


  .flow_graph_section .graph_frame span{
    width:100px;
    left:120px;
    top:-6px;
  }

  .flow_graph_section .graph_text{
    margin-top: 16px;
    font-size: 17px;
  }

  .flow_graph_section .graph_remark{
    margin-top: 40px;
    text-align: center;
  }

  .flow_guide_section{
    padding:80px 0;
  }

  .flow_guide_section .common_sec_title_half_bottom_border{
    text-align: center;
    line-height: 1.6;
  }

  .flow_guide_section .guide_head{
    width: 100%;
    min-height:50px;
    padding:8px 12px;
    font-size: 18px;
    margin:40px auto 0;
  }

  .flow_guide_section .guide_head::after{
    top:calc(100% - 1px);
    border-width: 12px 10px 0 10px;
  }

  .flow_guide_section .guide_box{
    margin-top: 40px;
    padding:24px 16px 40px;
  }


  .flow_guide_section .guide_remark_area{
    margin-top: 48px;
  }

  .flow_guide_section .guide_remark_head{
    font-size: 18px;
    padding-bottom: 12px;
  }

  .flow_guide_section .guide_remark_list{
    margin-top: 12px;
  }

  .flow_guide_section .guide_remark_list li{
    line-height: 1.3;
    padding-left: 14px;
    font-size: 14px;
  }

  .flow_guide_section .guide_remark_list li::before{
    width: 7px;
    height: 7px;
    top:6px;
  }

  .flow_guide_section .guide_remark_list li + li{
    margin-top: 12px;
  }

  .flow_guide_section .guide_remark_text{
    margin-top: 32px;
    font-size: 12px;
  }

  /*
  ------------------------------------
  地域に密着したセノーテ訪問看護
  ------------------------------------
  */

  body.community_body{
    
  }
  main.community_main{

  }

  .community_mv_section .mv{
    background-image: url('../img/community/community_mv.jpg');
  }

  .community_section{

  }

  .community_section01{
    padding-top: 80px;
  }

  .community_section01 .p01{
    font-size: 18px;
    line-height: 2;
  }


  .community_support_section{
    padding-top: 72px;
    padding-bottom: 80px;
  }

  .community_support_section .support_box{
    margin-top: 40px;
    padding:24px 16px;
  }


  .community_support_section .support_list{
    margin-top: 64px;
  }


  .community_support_section .support_block + .support_block{
    margin-top: 60px;
  }

  .community_support_section .support_block .support_thumb{
    width:100%;
    margin-right: 0;
    box-shadow: -10px 10px 0 #e9f1f8;
  }

  .community_support_section .support_block .support_text_area{
    padding-top: 32px;
  }

  .community_support_section .support_block .support_head{
    font-size: 24px;
    padding-bottom: 12px;
  }

  .community_support_section .support_block .support_text{
    margin-top: 16px;
    font-size: 16px;
    line-height: 1.75;
  }

  .community_support_section .support_msg_box{
    margin-top: 64px;
    padding:48px 32px 40px;
  }

  .community_support_section .support_msg_head{
    font-size: 22px;
    white-space: nowrap;
  }

  .community_support_section .support_remark{
    margin-top: 56px;
    font-size: 14px;
    line-height: 2;
  }

  .community_support_section .bgm_banner{

    margin:56px auto 0;
    flex-direction: column;
  }

  .community_support_section .bgm_banner .bgm_img{
    width: 100%;
  }

  .community_support_section .bgm_text_area{
    width: 100%;
    padding:16px 24px;
  } 

  .community_support_section .bgm_text_area::after{
    width: 16px;
    height: 16px;
    right:8px;
    bottom:8px;
  }

  .community_support_section .bgm_text{
    font-size: 18px;
  }

  /*
  ------------------------------------
  充実の看護体制
  ------------------------------------
  */

  body.system_body{
    
  }
  main.system_main{

  }

  .system_mv_section .mv{
    background-image: url('../img/system/system_mv.jpg');
  }

  .system_section{

  }

  .system_section01{
    padding-top:80px;
    padding-bottom: 80px;
  }

  .system_section01 .p01{
    font-size: 24px;
    line-height: 1.94;
  }

  .system_section01 .system_flex{
    display: flex;
    flex-direction: column-reverse;
    align-items: center;
    margin-top: 64px;
  }

  .system_section01 .system_text_area{
    width:100%;
    padding-top: 32px;
  }

  .system_section01 .system_text{
    padding-top: 20px;
    line-height: 2;
  }

  .system_section01 .system_text::before{
    width: 70px;
    height: 1px;
  }

  .system_section01 .system_img_area{
    width:600px;
    max-width: 100%;
    margin-left: 0;
    box-shadow: 20px -20px 0 #e9f1f8;
  }


  .system_manager_section{
    padding-top: 80px;
    padding-bottom: 80px;
  }

  .system_manager_section .common_sec_title_half_bottom_border{
    text-align: center;
  }

  .system_manager_section .manager_list{
    display: flex;
    align-items: center;
    flex-direction: column;
    gap:50px 0;
    margin-top: 64px;
  }

  .system_manager_section .manager_block{
    width:100%;
  }


  .system_manager_section .manager_text_area{
    margin-top: 24px;
  }

  .system_manager_section .manager_job{
    font-size: 17px;
    line-height: 1.5;
  }
  .system_manager_section .manager_job span{
    font-size: 15px;
  }

  .system_manager_section .manager_name{
    margin-top: 10px;
    font-size: 20px;
    font-weight: 400;
    line-height: 1.2;
  }

  /*
  ------------------------------------
  訪問スタッフについて
  ------------------------------------
  */

  body.staff_body{
    
  }
  main.staff_main{

  }

  .staff_mv_section .mv{
    background-image: url('../img/staff/staff_mv.jpg');
  }

  .staff_section{

  }

  .staff_section01{
    padding-top:60px;
    padding-bottom: 0;
  }

  .staff_section01 .p01{
    font-size: 20px;
    line-height: 1.94;
  }

  .staff_section01 .p02{
    max-width: 1020px;
    margin: 32px auto 0;
    line-height: 2;
  }

  .staff_section01 .about_list{
    margin-top: 60px;
    display: flex;
    justify-content: space-between;
    position: relative;
    flex-direction: column;
    padding-bottom: 32px;
    gap:32px 0;
  }

  .staff_section01 .about_list::after{
    height:calc(100% - 90px);
  }

  .staff_section01 .about_list li{
    width:100%;
  }

  .staff_list_section{
    padding-top: 96px;
    padding-bottom: 96px;
  }

  .staff_list_section .staff_list{
    margin-top: 68px;
    display: flex;
    align-items: flex-start;
    flex-wrap: wrap;
    justify-content: space-between;
    gap:64px 0;
  }

  .staff_list_section .staff_block{
    width:100%;
  }

  .staff_list_section .staff_thumb{
    box-shadow: 10px 10px 0 #e9f1f8;
    max-width: 260px;
    margin:0 auto;
  }


  .staff_list_section .staff_head{
    margin-top: 36px;
    padding-bottom: 12px;
  }

  .staff_list_section .staff_job{
    display: flex;
    justify-content: center;
    line-height: 1.63;
  }

  .staff_list_section .staff_name{
    display: flex;
    justify-content: center;
    font-size: 24px;
  }

  .staff_list_section .staff_text{
    margin-top: 16px;
    line-height: 2;
    padding:0;
  }


  /*
  ------------------------------------
  サポートエリア一覧
  ------------------------------------
  */

  body.area_body{
    
  }
  main.area_main{

  }

  .area_mv_section .mv{
    background-image: url('../img/area/area_mv.jpg');
  }

  .area_section{

  }

  .area_section01{
    padding-top:80px;
    padding-bottom: 60px;
  }

  .area_section01 .common_sec_title_half_bottom_border {
    text-align: center;
    font-size: 22px;
    white-space: nowrap;
}


  .area_section01 .area_box{
    margin-top: 40px;
    padding:40px 32px 32px;
  }

  .area_section01 .area_head{
    font-size: 26px;
  }

  .area_section01 .area_text{
    line-height: 1.75;
    max-width: 780px;
    margin:32px auto 0;
  }

  .area_section01 .map_area{
    padding-top: 224px;
    padding-bottom: 160px;
    width: 100vw;
    margin: 0 calc(50% - 50vw);
    overflow-y: scroll;
    padding-left: 120px;
    scrollbar-width: none; 
    -ms-overflow-style: none;
    position: relative;
  }

  .area_section01 .map_area::-webkit-scrollbar {  
    display: none;
  }

  .area_section01 .map_frame{
    position: relative;
    margin:0 auto;
    width: calc(868px * 0.6);
    min-width: calc(652px * 0.6);
  }

  .area_section01 .map_frame .map{
    width:100%;
  }

  .area_region_section{
    padding-top: 80px;
    padding-bottom: 80px;
  }

  .area_region_section .common_sec_title_half_bottom_border{
    font-size: 21px;
  }

  .area_region_section .region_list{
    margin-top: 48px;
    display: flex;
    align-items: flex-start;
    flex-wrap: wrap;
    justify-content: space-between;
    flex-direction: column;
    gap:24px 0;
  }

  .area_region_section .region_list li{
    width:100%;
  }

  .area_region_section .region_card{
    min-height: 80px;
    font-size: 18px;
    padding:4px 8px;
  } 

  .area_region_section .region_card::after{
    width:18px;
    height:11px;
    right:24px;
  }

  /*
  ------------------------------------
  サポートエリア 
  ------------------------------------
  */

  body.area_list_body{
    
  }
  main.area_list_main{

  }

  .area_list_section{

  }

  .area_list_info_section{
    padding-top: 80px;
    padding-bottom: 80px;
  }

  .area_list_info_section .info_area{
    margin-top: 48px;
    position: relative;
  }

  .area_list_info_section .info_frame{
    max-height: 300px;
  }


  .area_list_info_section .info_list{
    max-width: 800px;
    margin:0 auto;
    padding:24px;
  }


  .area_list_info_section .info_list .info_block{
    padding:24px 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }

  .area_list_info_section .info_list .info_date{
    min-width: 170px;
    padding-right: 0;
  }

  .area_list_info_section .info_list .info_title{
    transform: translateY(0);
    margin-top: 8px;
  }

  .area_list_info_section .info_remark{
    line-height: 1.75;
    margin:24px auto 0;
    text-align: left;
  } 

  .area_list_info_section .info_list_button_frame{
    position: static;
    margin:24px auto 0;
    display: flex;
    justify-content: center;
    align-items: center;
  }

  .area_list_info_section .info_list_button{
    min-width: 180px;
    min-height: 40px;
    border-radius: 3px;

    padding:4px 8px;
  }

  .area_list_info_section .info_list_button::after{
    width:8px;
    height:12px;
    right:18px;
  }

  .area_list_map_section{
    padding-top: 80px;
  }

  .area_list_map_section .map_area{
    width: 100vw;
    margin: 0 calc(50% - 50vw);
    overflow-x: scroll;
    scrollbar-width: none; 
    -ms-overflow-style: none;
  }

  .area_list_map_section .map_area::-webkit-scrollbar {  
    display: none;
  }

  .area_list_map_section .map{
    width:100%;
  }

  .area_list_feature_section{
    padding-top: 80px;
    padding-bottom: 80px;
  }

  .area_list_feature_section .feature_flex{
    display: flex;
    align-items: center;
    flex-direction: column-reverse;
    max-width: 600px;
    margin:64px auto 0;
  }

  .area_list_feature_section .feature_text_area{
    width: 100%;
    margin-top: 24px;
  }

  .area_list_feature_section .feature_head{
    font-size: 20px;
    font-weight: 600;
    line-height:1.3;
    padding-bottom: 20px;
  }

  .area_list_feature_section .feature_head::before{
    width: 70px;
    height: 1px;
  }

  .area_list_feature_section .feature_text{
    margin-top: 20px;
    line-height: 1.75;
  }

  .area_list_feature_section .feature_img_area{
    box-shadow: 15px -15px 0 #e9f1f8;
  }

  .area_list_station_section{
    padding-top: 80px;
    padding-bottom: 80px;
  }

  .area_list_station_section .station_list{

  }

  .area_list_station_section .station_list .station_frame + .station_frame{
    margin-top: 64px;
  }

  .area_list_station_section .station_list .station_block{
    padding:24px 16px 32px;
  }

  .area_list_station_section .station_list .station_name{
    display: flex;
    font-size: 20px;
    padding-bottom: 12px;
  }

  .area_list_station_section .station_list .station_name::before{
    width: 18px;
    height: 25px;
    margin-right: 12px;
    transform: translateY(1px);
  }

  .area_list_station_section .station_list .station_flex{
    margin-top: 24px;

  }

  .area_list_station_section .station_list .station_thumb{
    width:100%;
    flex-shrink: 0;
    margin-left: 0;
    max-width: 100%;
  }


  .area_list_station_section .station_list .station_text_area{
    width: 100%;
    margin-top: 24px;
  }

  .area_list_station_section .station_list .station_address{
    font-size: 16px;
    line-height: 1.44
  }

  .area_list_station_section .station_list .station_contact{
    margin-top: 16px;
  }

  .area_list_station_section .station_list .station_contact a,
  .area_list_station_section .station_list .station_contact span{
    display: block;
    font-size: 16px;
    line-height: 1.75;
  }

  .area_list_station_section .station_list .station_contact span{
    display: none;
  }
  .area_list_station_section .station_list .station_contact span.fax{
    display: block;
  }

  .area_list_station_section .station_list .station_support_box{
    margin-top: 40px;
    padding:32px 16px 32px;
    min-width: 260px;
  }

  .area_list_station_section .station_list .station_support_head{
    width: 160px;
    height: 30px;
    border-radius: 15px;
    font-size: 15px;
    top:-15px;
  }

  .area_list_station_section .station_support_text{
    font-size: 16px;
    line-height: 1.44;
  } 

  .area_list_station_section .station_button{
    width: 100%;
    max-width: 100%;
    height: 60px;

    margin:30px auto 0;
    border:2px solid #134b8d;
    font-size: 16px;
  }

  .area_list_station_section .station_button::after{
    width:8px;
    height:16px;
    right:20px;
  }

  /*
  ------------------------------------
  サポートエリア 福岡
  ------------------------------------
  */

  .area_list_fukuoka_mv_section .mv{
    background-image: url('../img/area/fukuoka/fukuoka_mv.jpg');
  }



  .area_list_fukuoka_map_section .map_area{
    padding-left: 24px;
    padding-right: 24px;
  }
  .area_list_fukuoka_map_section .map_frame{
    width: 720px;
    margin-left: 0;
  }

  /*
  ------------------------------------
  サポートエリア 沖縄
  ------------------------------------
  */

  .area_list_okinawa_mv_section .mv{
    background-image: url('../img/area/okinawa/okinawa_mv.jpg');
  }

  .area_list_okinawa_map_section .map_frame{
    width: 100%;
    width: 350px;
    margin:0 auto;
  }


    /*
  ------------------------------------
  サポートエリア 山口
  ------------------------------------
  */

  .area_list_yamaguchi_mv_section .mv{
    background-image: url('../img/area/yamaguchi/yamaguchi_mv.jpg');
  }

  .area_list_yamaguchi_map_section .map_frame{
    width: 720px;
  }

  /*
  ------------------------------------
  サポートエリア 広島
  ------------------------------------
  */

  .area_list_hiroshima_mv_section .mv{
    background-image: url('../img/area/hiroshima/hiroshima_mv.jpg');
  }

  .area_list_hiroshima_map_section .map_frame{
    width: 720px;
  }

  /*
  ------------------------------------
  サポートエリア 愛知
  ------------------------------------
  */

  .area_list_aichi_mv_section .mv{
    background-image: url('../img/area/aichi/aichi_mv.jpg');
  }

  .area_list_aichi_map_section .map_frame{
    width: 720px;
  }

  /*
  ------------------------------------
  サポートエリア 愛媛
  ------------------------------------
  */

  .area_list_ehime_mv_section .mv{
    background-image: url('../img/area/ehime/ehime_mv.jpg');
  }

  .area_list_ehime_map_section .map_frame{
    width: 720px;
  }

  /*
  ------------------------------------
  サポートエリア 神奈川
  ------------------------------------
  */

  .area_list_kanagawa_mv_section .mv{
    background-image: url('../img/area/kanagawa/kanagawa_mv.jpg');
  }

  .area_list_kanagawa_map_section .map_frame{
    width: 720px;
  }


  /*
  ------------------------------------
  ステーション
  ------------------------------------
  */

  body.station_body{
    
  }
  main.station_main{

  }

  .station_section{

  }

  .station_section:last-child{
    padding-bottom: 80px;
  }

  .station_section01{

  }

  .station_section01 .station_img_area{
    padding-top: 80px;
  }

  .station_section01 .station_img_area::before{
    height:calc(100% + 500px);
    bottom: 100px;
  }

  .station_section01 .station_img_flex{
    display: flex;
    justify-content: center;
    flex-direction: column;
    gap:32px 0;
  }

  .station_section01 .station_img{
    width:100%;
  }

  .station_section01 .station_info{
    max-width: 1000px;
    margin:32px auto 0;
    line-height: 1.75;
  }

  .station_area_section{
    padding-top: 80px;
  }

  .station_area_section .station_area_text_box{
    margin-top: 32px;
    padding:24px 16px;
  }
  .station_area_section .station_area_text{
    font-size: 16px;
    line-height: 1.75;
    text-align: center;
  }

  .station_area_section .station_area_remark{
    margin-top: 12px;
    font-size: 14px;
    line-height: 1.75;
  }

  .station_area_section .station_area_img{
    margin-top: 32px;
  }

  .station_area_section .station_area_img img{
    max-width: 100%;
  }

  .station_access_section{
    padding-top: 64px;
  }

  .station_access_section .station_map{
    height:200px;
  }

  .station_access_section .station_address{
    margin-top: 16px;
    line-height: 1.63;
  }

  .station_access_section .station_contact{
    margin-top: 10px;
    font-size: 15px;
  }

  .station_access_section .station_contact a,
  .station_access_section .station_contact span{
    line-height: 1.63;
  }

  .station_staff_section{
    padding-top: 80px;
  }

  .station_staff_section .staff_box{
    padding:0 16px 40px;
  }

  .station_staff_section .staff_head{
    min-width: auto;
    width: fit-content;
    max-width: 90%;
    min-height: auto;
    padding: 8px 20px;
    font-size: 20px;
  }

  .station_staff_section .staff_flex{
    margin-top: 32px;
    display: flex;
    align-items: center;
    flex-direction: column;
  }

  .station_staff_section .staff_img{
    width:100%;
    margin-right: 0;
  } 


  .station_staff_section .staff_text_area{
    width:100%;
    margin-top: 24px;
  }

  .station_staff_section .staff_text{
    line-height: 1.75;
  }

  .station_staff_section .staff_name_flex{
    gap:8px 12px;
    margin-top: 24px;
  }

  .station_staff_section .staff_job{
    font-size: 15px;
    line-height: 1.67;
    padding-top: 2px;
  }

  .station_staff_section .staff_name{
    font-size: 24px;
  }

  .station_other_section{
    padding-top: 80px;
    padding-bottom: 80px;
  }

  .station_other_section .other_list{
    margin-top: 40px;
    display: flex;
    flex-direction: column;
    gap:24px 0;
  }

  .station_other_section .other_list li{
    width: 100%;
  }

  .station_other_section  .other_card{
    min-height: 80px;
    padding:12px 40px 12px 24px;
    font-size: 18px;
  }
  .station_other_section  .other_card::after{
    width:10px;
    height:18px;
    right:24px;
  }


    /*
  ------------------------------------
  お問い合わせ共通
  ------------------------------------
  */

  body.contact_body{
    
  }
  main.contact_main{

  }


  .contact_section01{
    padding-top:60px ;
  }

  .contact_section01 .sec_head{
    font-size: 20px;
    font-weight: 600;
    line-height: 1.5;
  }

  .contact_section01 .contact_text01{
    line-height: 1.75;
    margin-top: 16px;
  }

  .contact_section01 .contact_remark_box{
    margin:32px auto 0;
    padding:24px 12px;
  }

  .contact_section01 .contact_remark_box li{
    line-height: 1.6;
  }


  .contact_form_section{
    padding-top: 80px;
  } 


  .contact_form_section .common_form_area{
    max-width: 1000px;
  }
  .common_form_area .form_line{
    display: flex;
    flex-direction: column;
  }


  .common_form_area .form_left{
    flex-shrink: 0;
    min-width:100%;
    padding:16px 24px;

  }

  .common_form_area .form_left label{
    justify-content: space-between;
    padding-top: 0;
    padding-bottom: 0;
  }

  .common_form_area .form_left label::after{
    font-size: 13px;
    height: 26px;
    width: 44px;
    border-radius: 5px;
    margin-left: 6px;
  }

  .common_form_area .form_right{
    width: 100%;
    padding:24px 0;
  }


  .common_form_area .form_right input[type="text"],
  .common_form_area .form_right input[type="tel"],
  .common_form_area .form_right input[type="email"]{

    height: 40px;
  }

  .common_form_area .form_right select{
    height: 40px;
  }

  .common_form_area .form_right textarea{
    padding:16px;
    height: 200px;
  }

  .common_form_area .form_right .select_frame{
    width:300px;
    max-width: 100%;
  }

  .common_form_area .form_right .tel_frame{
    width:100%;
  }

  .common_form_area .radio_area .wpcf7-form-control-wrap .wpcf7-radio{
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    gap:16px 24px;
  }

  .common_form_area .radio_area{
    padding-top: 0;
  }

  .common_form_area .radio_area label input{
    width:13px;
    height:13px;
    margin-right: 5px;
    margin-top: 4px;
  }

  .common_form_area .radio_area .wpcf7-list-item {
    margin: 0;
  }

  .common_form_area .radio_area .wpcf7-list-item + .wpcf7-list-item{
    margin-left: 0;
  }


  .common_form_area .privacy_box{
    margin-top: 40px;
    height: 200px;
    padding: 16px;
  }

  .common_form_area .privacy_box .title {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 10px;
  }

  .common_form_area .privacy_box p {
    font-size: 15px;
    line-height: 2.0;
    margin-bottom: 30px;
  }

  .common_form_area .privacy_box p + ul {
    margin-bottom: 30px;
  }

  .common_form_area .privacy_box p + ul li {
    font-size: 15px;
    padding-left: 1em;
    text-indent: -1em;
    margin-bottom: 4px;
  }



  .common_form_area .privacy_box .title_02 {
    font-size: 16px;
    border-left: 2px solid #034e95;
    padding-left: 15px;
    margin-bottom: 10px;
  }

  .common_form_area .agree_box{
    margin-top: 32px;
    padding: 24px 0;
  }


  .common_form_area .submit_frame{
    max-width: 100%;
    margin:32px auto 0;
  }

  .common_form_area .submit_frame .submit{
    height:80px;
    border:2px solid #034e95;
    font-size: 20px;
  }



  .contact_tel_section{
    padding-top: 80px;
    padding-bottom: 80px;
  } 


  .contact_tel_section .tel_block {
    width:100%;
    max-width: 400px;
}

  .contact_tel_section .tel_head{
    font-size: 18px;
    min-height: 60px;
    padding:8px 4px;
  }

  .contact_tel_section .tel_body{
    padding:64px 12px 40px;
  }

  .contact_tel_section .tel_num {
    font-size: 36px;
    
  }

  .contact_tel_section .tel_num::before {
    width: 30px;
    height: 30px;
    margin-right: 10px;
  }

  .contact_tel_section .tel_time {
    margin-top: 16px;
    font-size: 15px;
  }


  .contact_tel_section .tel_num .ruby {
    font-size: 14px;
    top: -16px;
  }
  /*
  ------------------------------------
  完了画面
  ------------------------------------
  */

  .contact_finish_section01{
    padding-bottom: 120px;
  }

  .contact_finish_section01 .top_link{
  
    height:80px;
  
    border:2px solid #034e95;
    font-size: 20px;
    margin:32px auto 0;
  }
  /*
  ------------------------------------
  ご利用者様専用フォーム
  ------------------------------------
  */

  body.contact_exist_body{
    
  }
  main.contact_exist_main{

  }

  .contact_exist_mv_section .mv{
    background-image: url('../img/contact/contact_exist_mv.jpg');
  }

  /*
  ------------------------------------
  新規顧客用フォーム
  ------------------------------------
  */

  body.contact_new_body{
    
  }
  main.contact_new_main{

  }

  .contact_new_mv_section .mv{
    background-image: url('../img/contact/contact_new_mv.jpg');
  }


    /*
  ------------------------------------
  セノーテ日記
  ------------------------------------
  */

  body.diary_body{
    
  }
  main.diary_main{

  }

  .diary_mv_section .mv{
    background-image: url('../img/diary/diary_mv.jpg');
  }

  .diary_section01{
    padding-top:80px;
    padding-bottom: 100px;
  }

  .diary_section01 .selected_name{
    font-size:20px;
    margin-bottom: 24px;
  }

  .diary_section01 .diary_list{
    display: flex;
    align-items: flex-start;
    flex-wrap: wrap;
    justify-content: space-between;
    flex-direction: column;
    gap:50px 0;
  }

  .diary_section01 .diary_block{
    width:100%;
  }


  .diary_section01 .diary_card .diary_body{
    padding-top: 16px;
  }

  .diary_section01 .diary_card .diary_category{
    min-width: 70px;
    min-height: 22px;
    padding: 2px 8px;
  }

  .diary_section01 .diary_card .diary_title{
    margin-top: 16px;
    line-height: 1.63;
    padding-bottom: 6px;
  }

  .diary_section01 .diary_card .diary_visor_area{
    margin-top: 30px;
  }

  .diary_section01 .diary_card .diary_visor_pic{
    flex-shrink: 0;
    margin-right: 15px;
    width:56px;
  }

  .diary_section01 .diary_card .diary_visor_job{
    font-size: 14px;
  }

  .diary_section01 .diary_card .diary_visor_name{
    margin-top: 4px;
    font-size: 20px;
  }

  .diary_section01 .common_pagination{
    margin-top: 96px;
  }

  /*ページネーション*/
  .common_pagination{
    gap:12px;
  }

  .common_pagination span.current{/*現在のページボタン*/
    min-width: 34px;
    height: 40px;
    padding:0 4px;
  }

  .common_pagination a.page-numbers{/*指定のページ移動ボタン*/
    min-width: 34px;
    height: 40px;
    padding:0 4px;
    transition-duration: 0.4s;
  }

  /*
  ------------------------------------
  セノーテ日記 詳細
  ------------------------------------
  */

  body.single_diary_body{
    
  }
  main.single_diary_main{

  }

  .single_diary_mv_section .mv{
    background-image: url('../img/diary/diary_mv.jpg');
  }

  .single_diary_section01{
    padding-top:80px;
    padding-bottom: 100px;
  }

  .single_diary_section01 .flex{
    display: flex;
    align-items: center;
    flex-direction: column;
  }

  .single_diary_section01 .diary_article{
    width:100%;
  }

  .single_diary_section01 .diary_title{
    font-size: 26px;
    line-height: 1.5;
    padding-bottom: 12px;
  }

  .single_diary_section01 .diary_info_flex{
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap:12px;
    margin-top: 24px;
  }

  .single_diary_section01 .diary_date{
    line-height: 1;
  }

  .single_diary_section01 .diary_category{
    min-width: 70px;
    min-height: 22px;
    padding: 2px 8px;
    font-size: 14px;
    line-height: 1.3;
  }

  .single_diary_section01 .common_single_block{
    margin-top: 40px;
  }

  .single_diary_section01 .side_column{
    width:320px;
    flex-shrink: 0;
    margin-left: 0;
    margin-top: 56px;
  }

  .single_diary_section01 .visor_box{
    padding:32px 12px;
  }

  .single_diary_section01 .visor_head{
    font-size: 20px;
    line-height: 1;
  }

  .single_diary_section01 .visor_pic{
    width:180px;
    margin:20px auto 0;
  }

  .single_diary_section01 .visor_station{
    margin-top: 12px;
    line-height: 1.63;
  }

  .single_diary_section01 .visor_job{
    margin-top: 8px;
    font-size: 14px;
    line-height: 1.63;
  }

  .single_diary_section01 .visor_name{
    font-size: 24px;
    line-height: 1.08;
    margin-top: 2px;
  }

  .single_diary_section01 .category_area{
    margin-top: 56px;
  }

  .single_diary_section01 .category_head{
    font-size: 20px;
    line-height: 1.2;
    padding-bottom: 12px;
  }

  .single_diary_section01 .category_list{
    margin-top: 28px;
  }

  .single_diary_section01 .category_list li + li{
    margin-top: 10px;
  }

  .single_diary_section01 .category_list li a{
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    font-size: 18px;
    line-height:1.2;
  }

  .single_diary_section01 .category_list li a::after{
    width:8px;
    height:13px;
    margin-top: 4px;
  }

  .single_diary_section01 .link_flex{
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap:24px 0;
    margin-top: 96px;
  }

  .single_diary_section01 .link_flex .link_archive{
    width: 100%;
    height: 70px;
    font-size: 18px;
    order: 2;
  }

  .single_diary_section01 .link_flex .link{
    width:48%;
  }

  .single_diary_section01 .link_flex .link a{
    width: 100%;
    height: 70px;
    font-size: 18px;
  }

  .single_diary_section01 .link_flex .link a::after{
    width:10px;
    height:18px;
  }

  .single_diary_section01 .link_flex .link_prev a{
    padding-left: 24px;
  }

  .single_diary_section01 .link_flex .link_prev a::after{
    background-image: url('../img/common/page_prev_blue.png');
    left:16px;
  }

  .single_diary_section01 .link_flex .link_next a{
    padding-right: 24px;
  }

  .single_diary_section01 .link_flex .link_next a::after{
    background-image: url('../img/common/page_next_blue.png');
    right:16px;
  }

  .common_single_block{
    font-size: 16px;
    line-height: 1.75;
  }

  .common_single_block .wp-block-image{
    margin-top: 48px;
  }

  .common_single_block h2{
    font-size: 20px;
    line-height: 1.5;
    margin-top: 32px;
  }

  .common_single_block h3{
    font-size: 18px;
    margin-top: 24px;
    line-height: 1.5;
  }


  .common_single_block p{
    margin-top: 24px;
  }

    /*
  ------------------------------------
  新着情報一覧
  ------------------------------------
  */

  body.info_body{
    
  }
  main.info_main{

  }

  .info_section01{
    padding-top: 80px;
    padding-bottom: 100px;
  }

  .info_section01 .info_list .info_block{
    padding:24px 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }

  .info_section01 .info_list .info_date{
    min-width: 170px;
    padding-right: 0;
  }

  .info_section01 .info_list .info_title{
    transform: translateY(0);
    margin-top: 8px;
  }



  /*
  ------------------------------------
  新着情報 詳細
  ------------------------------------
  */

  .single_info_section01{
    padding-top: 80px;
    padding-bottom: 100px;
  }

  .single_info_section01 .info_article{

  }

  .single_info_section01 .info_title{
    font-size: 26px;
    line-height: 1.5;
    padding-bottom: 12px;
  }

  .single_info_section01 .info_date{
    line-height: 1.63;
    margin-top: 24px;
  }

  .single_info_section01 .common_single_block{
    margin-top: 40px;
  }

  .single_info_section01 .link_flex{
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap:24px 0;
    margin-top: 96px;
  }

  .single_info_section01 .link_flex .link_archive{
    width: 100%;
    height: 70px;
    font-size: 18px;
    order: 2;
  }

  .single_info_section01 .link_flex .link{
    width:48%;
  }

  .single_info_section01 .link_flex .link a{
    width: 100%;
    height: 70px;
    font-size: 18px;
  }

  .single_info_section01 .link_flex .link a::after{
    width:10px;
    height:18px;
  }

  .single_info_section01 .link_flex .link_prev a{
    padding-left: 24px;
  }

  .single_info_section01 .link_flex .link_prev a::after{
    background-image: url('../img/common/page_prev_blue.png');
    left:16px;
  }

  .single_info_section01 .link_flex .link_next a{
    padding-right: 24px;
  }

  .single_info_section01 .link_flex .link_next a::after{
    background-image: url('../img/common/page_next_blue.png');
    right:16px;
  }


  /*
  ------------------------------------
  404
  ------------------------------------
  */

  body.page404_body{
    
  }
  main.page404_main{

  }

  .page404_section{
    padding-top: 60px;
    padding-bottom: 60px;
  }


  .page404_section .p01{
    font-size: 32px;
  }

  .page404_section .p02{
    line-height: 1.75;
    margin-top: 32px;
    font-size: 16px;
  }
  
}/*@media screen and (max-width:767px){*/