@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:400px;
    margin:0 auto;
  }


    /*
  ------------------------------------------
  共通パーツ サイドバー
  ------------------------------------------
  */

  #sidebar{
    max-width:100%;
    margin-top: 56px;
  }

  #sidebar .sideber_section{
    padding:20px 0 40px;
  }

  #sidebar .sideber_head{
    font-size: 20px;
  }

  #sidebar .select_frame{
    margin-top: 18px;
  }


  #sidebar .tag_list{
    display: flex;
    flex-wrap: wrap;
  }

  #sidebar .tag_list a{
    margin-right: 8px;
    margin-top: 8px;
  }


  #sidebar .sidebar_min_head{
    font-size: 16px;
    padding-bottom: 3px;
    border-bottom: 2px solid #242424;
  }
  /*
  ------------------------------------------
  共通セクション (ヘッダー)
  ------------------------------------------
  */


  /*ヘッダー*/
  header{

  }

  header .header_container{
    padding:0 24px;
  }


  header .header_flex{
    height:55px;
  }

  header .header_logo{
    display: block;
  }

  header .header_logo img{
    width:auto;
    height:30px;
  }


  header .header_right{

  }


  header .header_right .mypage_link{
    width:40px;
  }

  /*
  ------------------------------------------
  共通セクション (snsセクション)
  ------------------------------------------
  */

  .common_sns_section{
    padding:40px 0;
  }

  /*
  ------------------------------------------
  共通セクション (フッター)
  ------------------------------------------
  */


  footer{
    padding:32px 0 40px;
  }

  /*
  ------------------------------------------
  共通セクション (下層ページmv)
  ------------------------------------------
  */

  .common_page_mv_section{

    height:300px;
  }

  .common_page_mv_section .page_title{
    width:92%;
    font-size: 28px;

  }

  /*
  ------------------------------------------
  トップページ
  ------------------------------------------
  */

  body.top_body{
    
  }

  main.top_main{

  }

  .top_section{

  }

  .top_section01{
    position: relative;
  }

  .top_section01 .mv_plan_block{
    max-width: 1000px;
    margin:0 auto;
    padding:0;
    max-width: 500px;
    margin:0 auto;
    /* align-items: center; */
    
  }

  .top_section01 .mv_plan_block .img_area{
    width:100%;
    height:auto;
    aspect-ratio: 1/0.8;
    cursor: pointer;
  }

  .top_section01 .mv_plan_block .text_area{
    width:100%;
    flex-shrink: 0;
    padding-left: 20px;
    padding-right: 20px;
    padding-top: 32px;
    padding-bottom: 96px;
  }

  .top_section01 .mv_plan_block .plan_title{
    margin-top: 8px;
    font-size: 26px;
    line-height: 1.5;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 5;
  }


  .top_section02{
    
  }

  .top_section02 .scroll_display{
    left:-24px;
  }

  .top_section02 .scroll_display .scroll_text{
    width:10px;
    margin-bottom: 12px;
  }

  .top_section02 .scroll_display .scroll_border{
    width: 1.5px;
    height: 110px;
  }

  .top_section02 .white_box{
    width:calc(100% - 40px);
    margin:-50px 0 0 auto;
    padding:24px 0 32px 24px;
  }


  .top_section02 .white_box .flex{
    display: flex;
    align-items: center;
  }


  .top_section02 .main_block{
    display: block;
  }

  .top_section02 .main_block .thumb{
    width:270px;
    height:auto;
    aspect-ratio: 1/0.57;
  }

  .top_section02 .swiper_block .top_pickup_prev,
  .top_section02 .swiper_block .top_pickup_next{
    width:36px;
    height:36px;
    top:16px;
  }

  .top_section02 .swiper_block .top_pickup_prev{
    /* right:152px; */
    left:auto;
    right:72px;
  }

  .top_section02 .swiper_block .top_pickup_next{
    left:auto;
    right:24px;
  }

  .top_section02 .head_flex{
    margin-bottom: 24px;
  }

  .top_section02 .head_flex p{
    font-size: 24px;
    line-height: 1;
  }

  .top_section02 .swiper-slide{
    padding-right: 24px;
  }

  .top_section02 .pickup_card{
    display: flex;
    flex-direction: column;
    width: 200px;
  }

  .top_section02 .pickup_card .thumb{
    width: 100%;
    height: auto;
    aspect-ratio: 1/0.57;
    margin-right: 8px;
  }

  .top_section02 .pickup_card .text_area{
    max-width:100%;
  }

  .top_section02 .pickup_card .pickup_cat{
    line-height: 1.2; 
    margin-top: 6px;
    margin-bottom: 8px;
    font-size: 13px;
  }

  .top_section02 .pickup_card .pickup_title{
    font-size: 14px;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }

  .top_section03{
    padding:132px 0 60px;
    margin-top: -64px;
  }

  .top_section03 .flex{
    display: flex;
    flex-direction: column;
  }

  .top_section03 .flex .left{
    width:180px;
    margin-right: 0;
    padding-top: 16px;
  }

  .top_section03 .flex .left::before{
    height: 2px;
    
  }

  .top_section03 .left .news_head{
    font-size: 24px;
    line-height: 1;
    margin-bottom: 0;  
  }

  .top_section03 .more_link{
    font-size: 18px;
    margin-top: 32px;
  }

  .top_section03 .more_link::before{
    width:18px;
    height:18px;
    margin-right: 8px;
  }

  .top_section03 .right{
    width:100%;
    margin-top: 40px;
  }


  .top_section03 .news_list .news_block{
    padding:20px 0;
  }

  .top_section03 .news_block .news_date{
    width:100px;
    font-size: 14px;
    line-height: 1.5;
  }

  .top_section03 .news_block .news_title{
    font-size: 14px;
    line-height: 1.5;
  }

  .top_section04{
    padding:80px 0 72px;
  }

  .top_section04 .about_head_frame{
    margin-bottom: 36px;
    padding-bottom: 6px;
  }

  .top_section04 .about_head_frame::after{
    width: 394px;
    max-width:90%;
    height: 1px;
  }

  .top_section04 .about_head{
    font-size: 36px;
    line-height: 1.3;
  }

  .top_section04 .about_head_frame .back_text{
    font-size: 48px;
    white-space: nowrap;
    left:20px;
    top:-20px;
  }

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

  .top_section04 .about_block{
    width:100%;
  }

  .top_section04 .about_block + .about_block{
    margin-top: 64px;
  }

  .top_section04 .about_block .about_thumb{
    margin-bottom: 20px;
  }


  .top_section04 .about_block .about_title{
    margin-bottom: 12px;
    font-size: 22px;
    line-height: 1.3;
  }

  .top_section04 .about_block .about_text{
    line-height: 1.7;
    font-size: 15px;
    margin-bottom: 32px;
  }

  .top_section04 .about_block .about_link{
    height: 50px;
    border-radius: 32px;
    padding:0 48px;
    font-size: 16px;
    margin:32px auto 0;
  }

  .top_section04 .about_block .about_link::after{
    width:11px;
    height:13px;
    right:16px;
  }

  .top_section05{
    padding:80px 0;
  }

  .top_section05 .tour_head_frame{
    margin-bottom: 36px;
    padding-bottom: 6px;
  }

  .top_section05 .tour_head_frame::after{
    width: 270px;
    max-width:90%;
  }

  .top_section05 .tour_head{
    font-size: 36px;
    line-height: 1.3;
  }

  .top_section05 .tour_head_frame .back_text{
    font-size: 48px;
    white-space: nowrap;
    left: 20px;
    top: -20px;
  }

  .top_section05 .tour_block{
    margin:0 auto 64px;
    width: 100%;
    max-width: 100%;
  }

  .top_section05 .tour_block:last-child{
    margin-bottom: 0;
  }

  .top_section05 .tour_block .thumb{
    width:100%;
    height:auto;
  }


  .top_section05 .tour_block .text_area{
    width:100%;
    padding-top: 24px;
  }

  .top_section05 .tour_block .text_area .tour_title{
    font-size: 22px;
    line-height: 1.3;
    margin-bottom: 12px;
  }

  .top_section05 .tour_block .text_area .tour_text{
    margin-bottom: 32px;
    font-size: 14px;
    line-height: 1.7;
  }

  .top_section05 .tour_block .text_area .tour_link{
    height: 50px;
    border-radius: 32px;
    padding: 0 48px;
    font-size: 16px;
    margin: 32px auto 0;
  }

  .top_section05 .tour_block .text_area .tour_link::after{

    width:11px;
    height:13px;
    right:16px;
  }

  /*
  ------------------------------------------
  下層共通
  ------------------------------------------
  */


  /*wpブロックエディタ*/
  .common_single_block{
    max-width: 1000px;
  }

  .common_single_block h2{
    margin: 32px 0;
    padding-bottom: 8px;
    font-size: 20px;
    line-height: 1.6;
  }

  .common_single_block h3{
    font-size: 18px;
    font-weight: 600;
    line-height: 1.5;
    margin: 24px 0;
    padding-bottom: 12px;
  }

  .common_single_block p{
    line-height: 1.75;
    font-size: 15px;
    margin: 24px 0;
  }

  .common_single_block figure{
    margin-top: 24px;
    margin-bottom: 24px;
  }

  .common_single_block .wp-block-embed.aligncenter{
    display: flex;
    flex-direction: column;
    align-items: center;
  }


  /*ページネーション*/
  .common_pagenation{
    gap:16px 8px;
    margin-top: 40px;
  }

  .common_pagenation span.current{/*現在のページボタン*/
    width: 40px;
    height: 40px;
    font-size: 14px;
  }

  .common_pagenation a.page-numbers{/*指定のページ移動ボタン*/
    width: 40px;
    height: 40px;
    font-size: 14px;
  }

  .common_pagenation a.page-numbers.next,
  .common_pagenation a.page-numbers.prev{/*next prevボタン*/
    padding:0 8px;
  }


  /*ログイン、新規登録フォーム*/

  .common_login_form_area{
    max-width:580px;
    margin:0 auto;
  }

  .common_login_form_area .site_logo{
    width:160px;
    margin:0 auto 40px;
  }

  .common_login_form_area .input_frame{
    margin-top: 40px;
  }

  .common_login_form_area .input_email_frame::before{
    width:30px;
    height:30px;
    left:10px;
    bottom:12px;
    background-size: contain;
  }

  .common_login_form_area .input_pass_frame::before{
    width:26px;
    height:35px;
    left:12px;
    bottom:8px;
    background-size: contain;
  }

  .common_login_form_area .input_frame input{
    height:50px;
    border-bottom:2px solid #CBCBCB;
    padding-left: 48px;
    font-size: 16px;
  }

  .common_login_form_area .btn_area{
    margin-top: 48px;
  }

  .common_login_form_area .submit_button{
    
    width: 240px;
    height: 50px;
    border-radius: 49.5px;
  
    font-size: 18px;
  }

  .common_login_form_area .register_button{

    margin:40px auto 0;
    line-height: 1.3;
    padding-bottom: 4px;
  }
  /*
  ------------------------------------------
  新規会員登録 
  ------------------------------------------
  */


  body.register_body{
    
  }

  main.register_main{

  }

  .register_section{

  }

  .register_section01{
    padding:56px 0 24px;
  }

  /*
  ------------------------------------------
  広島観光手配の概要
  ------------------------------------------
  */


  body.about_body{
    
  }

  main.about_main{

  }

  .about_section{

  }

  .about_section01{
    padding:64px 0;
    padding-bottom: 28px;
  }


  .about_section01 .en_title{
    font-size: 44px;
    letter-spacing: 0.04em;

  }

  .about_section01 .ja_title{
    font-size: 18px;
    margin-top: 12px;
  }

  .about_section01 .bg{
    width:100%;
    height:100%;

  }

  .about_section02{
    padding:60px 0 60px;
  }


  .about_section02 .about_list{
    /* margin-top: 140px; */
  }

  .about_section02 .about_block{
    display: flex;
    margin-bottom: 80px;
  }


  .about_section02 .about_block .about_title{
    padding-bottom: 16px;
    margin-bottom: 16px;
    font-size: 28px;
  }

  .about_section02 .about_block .about_title::after{
    width:64px;
    height:2px;
  }

  .about_section02 .about_block .about_text{
    line-height: 1.75;
    font-size: 15px;
    position: relative;
  }


  /*
  ------------------------------------------
  プラン一覧 
  ------------------------------------------
  */


  body.plan_list_body{
    
  }

  main.plan_list_main{

  }

  .plan_list_section{

  }

  .plan_list_section01{
    padding:24px 0 60px;
  }

  .plan_list_section01 .area_full_frame{
    margin: 0 calc(50% - 50vw);
    height:300px;
    margin-bottom: 32px;
  }


  .plan_list_section01 .area_name{
    font-size: 32px;
    line-height: 1.4;

  }

  .plan_list_section01 .other_area_text{
    padding-bottom:16px;
    font-size: 20px;

  }

  .plan_list_section01 .area_list{
    gap:16px 40px;
    margin-top:16px;
  }

  .plan_list_section01 .area_list .area_card{
    padding:12px;
    min-width:100%;
  }

  .plan_list_section01 .area_list .area_card .area_card_name{
    font-size: 13px;
    line-height: 1.3;
    margin-bottom: 4px;
  }

  .plan_list_section01 .area_list .area_card .area_card_description{
    font-size: 13px;
    line-height: 1.3;
  }

  .plan_list_section02{
    padding:40px 0 80px;
  }

  .plan_list_section02 .tag_head_text{
    font-size: 18px;
    margin-bottom: 24px;
  }

  .plan_list_section02 .flex{
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: column;
  }

  .plan_list_section02 .article{
    width:100%;
  }

  .plan_list_section02 .plan_card_list{

  }

  .plan_list_section02 .plan_card{
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    padding:24px 0;
  }

  .plan_list_section02 .plan_card .thumb{
    width:100%;
    height:auto;
    aspect-ratio: 1/0.58;
    margin-right: 0;
  }

  .plan_list_section02 .plan_card .plan_text_area{
    width:100%;
    margin-top: 16px;

  }

  .plan_list_section02 .plan_card .area{
    margin-bottom: 6px;
    font-size: 13px;
    line-height: 1.3;
  }

  .plan_list_section02 .plan_card .plan_title{

    line-height: 1.3;
  }

  .plan_list_section02 .plan_card .plan_tag_list{
    margin-top: 8px;
  }

  .plan_list_section02 .plan_item .plan_bookmark_switch{
    width:31px;
    height:45px;
    background-image: contain;
    left:10px;
    top:40px;
  }

  /*
  ------------------------------------------
  プラン詳細
  ------------------------------------------
  */


  body.plan_single_body{
    
  }

  main.plan_single_main{

  }

  .plan_single_section{
    padding:40px 0;
  }

  main.plan_single_main .plan_sec_title{
    font-size: 24px;
    margin-bottom: 20px;
  }

  main.plan_single_main .plan_sec_title span{
    margin-left: 12px;
    font-size: 14px;
    padding-top: 8px;
  } 

  main.plan_single_main .plan_bookmark_frame{
    margin-top: 12px;
  }


  .plan_mv_section{

  }

  .plan_mv_section .plan_thumb{
    aspect-ratio: 1/0.4;
    max-height:440px;
  }

  .plan_mv_section .plan_title{
    margin-top: 12px;
    font-size: 24px;
    line-height: 1.4;
  }

  .plan_mv_section .plan_caption{
    line-height: 1.5;
    margin-top: 16px;
  }


  .plan_anchor_section .anchor_list{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
  }

  .plan_anchor_section .anchor_list li{
    cursor: pointer;
    margin-bottom: 16px;
    font-size: 14px;
  }

  .plan_anchor_section .anchor_list .border{
    height:20px;
    margin:0 8px;
    margin-bottom: 16px;
  }

  .plan_overview_section{
    
  } 

  .plan_overview_section .flex{
    display: flex;
    flex-direction: column;
  }

  .plan_overview_section .thumb{
    margin-bottom: 24px;
  }


  .plan_overview_section .text_area p{
    line-height: 1.75;
    font-size: 15px;
  }


  .plan_feature_section{
    
  } 

  .plan_feature_section .feature_list{

  }

  .plan_feature_section .feature_list li{
    display: flex;
    align-items: flex-start;
    margin-bottom: 16px;
  }

  .plan_feature_section .feature_list li .radi{
    width:8px;
    height:8px;
    margin-top: 11px;
    margin-right: 12px;
  }

  .plan_feature_section .feature_list li p{
    font-size: 16px;
    padding-bottom: 4px;
    line-height: 1.75;
  }

  .plan_keyword_section{
    
  } 

  .plan_gallery_section{
    
  } 

  .plan_gallery_section .gallery_list{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap:20px 0;
  }

  .plan_gallery_section .gallery_list li{
    width:48%;
  }

  .plan_schedule_section{

  }

  .plan_schedule_section .schedule_container{
    max-width: 1000px;
    margin:0 auto;
  }

  .plan_schedule_section .schedule_list{
    
  }

  .plan_schedule_section .schedule_block{
    display: flex;
    align-items: flex-start;
    margin-bottom: 32px;
  }

  .plan_schedule_section .schedule_block::before{
    width:2px;
    height:calc(100% - 20px);
    bottom:-26px;
    left:19px;
  }

  .plan_schedule_section .schedule_block .schedule_step{
    margin-right: 24px;
    width:40px;
    height:40px;
  }

  .plan_schedule_section .schedule_block .schedule_contents{
    width:100%;
    padding-top: 8px;
  }

  .plan_schedule_section .schedule_block .schedule_time{
    margin-bottom: 24px;
    padding-bottom: 8px;
    font-size: 18px;
  }

  .plan_schedule_section .schedule_block .schedule_flex{
    display: flex;
    align-items: flex-start;
    flex-direction: column;
  }

  .plan_schedule_section .schedule_block .schedule_img{
    width:100%;
    height:auto;
    aspect-ratio: 1/0.625;
    margin-right: 0;
  }


  .plan_schedule_section .schedule_block .schedule_info{
    width:100%;
    margin-top: 16px;
    font-size: 15px;
    line-height: 1.7;
  }


  .plan_map_section{

  }

  .plan_price_section{

  }


  .plan_price_section table{
    border-collapse: collapse;
  }

  .plan_price_section table th,
  .plan_price_section table td{
    padding:6px 8px;
    line-height: 1.5;
    font-size: 14px;
  }


  .plan_single_main .contact_link{
    width:300px;
    height:60px;
  }

  .plan_single_main .contact_link .contact01{
    font-size: 18px;
  }

  .plan_single_main .contact_link .contact02{
    font-size: 13px;
    margin-top: 6px;
    line-height: 1.3;
  }
  /*
  ------------------------------------------
  観光事業者紹介一覧
  ------------------------------------------
  */


  body.exhibitor_list_body{
    
  }

  main.exhibitor_list_main{

  }

  main.exhibitor_list_main .common_page_mv_section .mv{
    width: 100%;
    min-width: auto;
    height:100%;
    object-position: center;
    top:0;
  }

  .exhibitor_list_section{

  }

  .exhibitor_list_section01{
    padding:60px 0 40px;
  }

  .exhibitor_list_section01 .flex{
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: column;
  }


  .exhibitor_list_section01 .article {
    width: 650px;
    max-width: 100%;
  }


  .exhibitor_list_section01 .exhibitor_card_list{

  }

  .exhibitor_list_section01 .exhibitor_card{
    position: relative;
    display: flex;
    flex-direction: column;
    padding:24px 0;
  }

  .exhibitor_list_section01 .exhibitor_card .thumb{
    width:100%;
    margin-right: 0;
  }

  .exhibitor_list_section01 .exhibitor_card .exhibitor_text_area{
    width:100%;
    margin-top: 16px;
  }

  .exhibitor_list_section01 .exhibitor_card .area{
    margin-bottom: 6px;
    font-size: 13px;
  }

  .exhibitor_list_section01 .exhibitor_card .exhibitor_title{
    line-height: 1.3;
  }

  .exhibitor_list_section01 .exhibitor_card .exhibitor_tag_list{
    gap: 4px;
    margin-top: 12px;
  }

  .exhibitor_list_section01 .exhibitor_card .exhibitor_tag_item{
    font-size: 11px;
    letter-spacing:0;
    line-height: 1.3;
  
  }



  /*
  ------------------------------------------
  観光事業者紹介 シングル
  ------------------------------------------
  */


  body.exhibitor_single_body{
    
  }

  main.exhibitor_single_main{

  }

  .exhibitor_single_section{

  }

  .exhibitor_single_section01{
    padding:40px 0 20px;
  }

  .exhibitor_single_section01 .exhibitor_main_img{
    height:300px;
  }

  .exhibitor_single_section01 .white_box{
    margin-bottom: 56px;
    max-width: 95%;
    margin-top: -24px;
    padding:24px 16px 32px;
  }

  .exhibitor_single_section01 .white_box .exhibitor_tag_list{
    gap:8px;
  }

  .exhibitor_single_section01 .white_box .exhibitor_title{
    font-size: 18px;
    margin-top: 12px;
  }

  /*
  ------------------------------------------
  通訳ガイド紹介一覧
  ------------------------------------------
  */


  body.guide_list_body{
    
  }

  main.guide_list_main{

  }

  .guide_list_section{

  }

  .guide_list_section01{
    padding:60px 0 40px;
  }


  .guide_list_section01 .guide_card_list{

  }


  .guide_list_section01 .guide_card{
    display: flex;
    flex-direction: column;
    padding:24px 0;
  }

  .guide_list_section01 .guide_card .thumb{
    width:100%;
    margin-right: 0;
  }

  .guide_list_section01 .guide_card .guide_text_area{
    width:100%;
    margin-top: 16px;
  }

  .guide_list_section01 .guide_card .area{
    margin-bottom: 6px;
    font-size: 13px;
  }

  .guide_list_section01 .guide_card .guide_title{
    line-height: 1.3;
  }

  .guide_list_section01 .guide_card .guide_tag_list{
    gap: 4px;
    margin-top:12px;
  }

  
  .guide_list_section01 .guide_card .guide_greeting{
    margin-top: 12px;
    line-height: 1.3;
    font-size: 14px;
  }

  /*
  ------------------------------------------
  通訳ガイド紹介 シングル
  ------------------------------------------
  */


  body.guide_single_body{
    
  }

  main.guide_single_main{

  }

  .guide_single_section{

  }

  .guide_single_section01{
    padding:40px 0 60px;
  }

  .guide_single_section01 .guide_main_img{
    height:300px;
  }

  .guide_single_section01 .white_box{
    margin-bottom: 56px;
    max-width: 95%;
    margin-top: -24px;
    padding: 24px 16px 32px;
  }

  .guide_single_section01 .white_box .info_flex{
    display: flex;
    align-items: flex-start;
  }

  .guide_single_section01 .white_box .guide_tag_list{
    display: flex;
    flex-wrap: wrap;
    
    gap:8px;
  }


  .guide_single_section01 .white_box .guide_title{
    font-size: 18px;
    margin-top: 12px;
  }
  /*
  ------------------------------------------
  お知らせ
  ------------------------------------------
  */

  body.news_body{
    
  }

  main.news_main{

  }

  .news_section{

  }

  .news_section01{
    padding:64px 0 40px;
  }

  .news_section01 .sec_title{
    font-size: 30px;
    margin-bottom: 40px;
  }

  .news_section01 .news_list{

  }


  .news_section01 .news_block{
    display: flex;
    align-items: flex-start;
    padding:24px 40px 24px 0;
  } 

  .news_section01 .news_block::after{
    width:8px;
    height:15px;
    top:30px;
    right:8px;
    background-size: contain;
  }

  .news_section01 .news_block .date{
    width: 110px;
    font-size: 15px;
    line-height: 1.5;
  }

  .news_section01 .news_block .news_title{
    line-height: 1.5;
    font-size: 16px;
  }

  /*
  ------------------------------------------
  マイページ
  ------------------------------------------
  */

  body.mypage_body{
    
  }

  main.mypage_main{

  }

  .mypage_section{

  }

  .mypage_section01{
    padding:40px 0 40px;
  }


  .mypage_section01 .flex{
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: column;
  }

  .mypage_section01 .flex .article{
    width:100%;
  }

  .mypage_section01 .prof_box{
    margin-bottom: 48px;
    padding:24px 16px;
  }

  .mypage_section01 .prof_box .head_flex{
    padding-bottom: 8px;
    margin-bottom: 24px;
  }

  .mypage_section01 .prof_box .head_flex p{
    font-size: 20px;
    line-height: 1.3;

  }

  .mypage_section01 .prof_box .head_flex a{
    padding:6px 12px;
    font-size: 16px;
  }

  .mypage_section01 .prof_box .info_list{

  }

  .mypage_section01 .prof_box .logout_link{
    margin-top: 32px;
  }

  .mypage_section01 .chat_box{
    margin-bottom: 48px;
    padding: 24px 16px;
  }

  .mypage_section01 .chat_box .head_flex{
    padding-bottom: 8px;
    margin-bottom: 24px;
  }

  .mypage_section01 .chat_box .head_flex p{
    font-size: 20px;
    line-height: 1.3;

  }

  .mypage_section01 .chat_box .head_flex a{
    padding: 6px 12px;
    font-size: 16px;
  }

  .mypage_section01 .chat_box ul{

  }

  .mypage_section01 .chat_box li + li{
    margin-top: 20px;
  }


  .mypage_section01 .chat_box li .chat_plan_title{
    font-size: 18px;
    font-weight: bold;
  }

  .mypage_section01 .chat_box .date{
    font-size: 15px;
    margin-top: 12px;
  }

  .mypage_section01 .chat_box .chat_text{
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    margin-top: 6px;
  }

  .mypage_section01 .book_mark_head{
    font-size: 20px;
    margin-bottom: 16px;
  }

  .mypage_section01 .bookmark_plan_card{
    display: flex;
    flex-direction: column;
    padding:24px 0;
  }

  .mypage_section01 .bookmark_plan_card .thumb{
    width:100%;
    height:auto;
    aspect-ratio: 1/0.58;
    margin-right: 0;
  }

  .mypage_section01 .bookmark_plan_card .bookmark_plan_text_area{
    width:100%;
    margin-top: 16px;
  }

  .mypage_section01 .bookmark_plan_card .area{
    min-width: 160px;
    padding:4px 8px;
    margin-bottom: 8px;
  } 

  .mypage_section01 .bookmark_plan_card .plan_title{
    font-size: 18px;
    margin-bottom: 12px;
    line-height: 1.5;
  }

  .mypage_section01 .bookmark_plan_card .link{
    width: 288px;
    height: 64px;
    margin:0 auto;
    font-size: 20px;
  }

  .mypage_section01 .bookmark_plan_card .link::after{
    width:11px;
    height:19px;
    right:24px;
  }

  .mypage_section01 .bookmark_plan_card .chat_link{
    margin-top: 10px;
    padding-right: 12px;
    font-size: 16px;
  }

  .mypage_section01 #sidebar{
    width: 100%;
  }

  .mypage_section01 #sidebar .sidebar_tour_area ul{
    margin-top: 24px;
  }

  .mypage_section01 #sidebar .sidebar_tour_area li+li{
    margin-top: 20px;
  }

  /*
  ------------------------------------------
  チャット一覧
  ------------------------------------------
  */
  body.chat_list_body{
    
  }

  main.chat_list_main{

  }

  .chat_list_section{

  }

  .chat_list_section01{
    padding:60px 0 40px;
  }

  .chat_list_section01 .sec_title{
    font-size: 30px;
    margin-bottom: 56px;
  }

  .chat_list_section01 .chat_kind_head{
    font-size: 22px;
    margin-bottom: 20px;
  }

  .chat_list_section01 .no_read_area{
    margin-bottom: 72px;
  }

  .chat_list_section01 .no_read_list{

  }

  .chat_list_section01 .no_read_card{
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    padding: 24px 24px 24px 0;
  }

  .chat_list_section01 .no_read_card::after {
    width: 10px;
    height: 18px;
    top: 38px;
    right: 12px;
  }

  .chat_list_section01 .no_read_card .no_read_left{
    width:180px;
    margin-right: 0;
  }

  .chat_list_section01 .no_read_card .no_read_partner_company{
    font-size: 16px;
  }
  
  .chat_list_section01 .no_read_card .no_read_partner_name{
    font-size: 14px;
    margin-top: 2px;
  }
  
  .chat_list_section01 .no_read_card .no_read_chat_japan_time{
    margin-top: 8px;
    font-size: 12px;
  }

  .chat_list_section01 .no_read_card .no_read_right{
    width: 100%;
    margin-top: 8px;
  }

  .chat_list_section01 .no_read_card .no_read_plan_name{
    line-height: 1.5;
    font-size: 14px;
  }

  .chat_list_section01 .no_read_card .no_read_chat_text {
    margin-top: 4px;
    font-size: 13px;
  }


  .chat_list_section01 .partner_select_frame{
    margin:0 auto 32px;
  }

  .chat_list_section01 .partner_select{
    width:300px;
    height:50px;
    border-radius: 25px;
    padding:0 12px;
    font-size: 17px;    
  }

  .chat_list_section01 .chat_block{
    display: flex;
    align-items: flex-start;
    flex-wrap: wrap;
    padding:24px 24px 24px 0;
  } 

  .chat_list_section01 .chat_block::after{
    width:10px;
    height:18px;
    top:38px;
    right:12px;
  }

  .chat_list_section01 .chat_block .date{
    width: 160px;
    margin-right: 0;
    margin-left: 16px;
    padding-top: 10px;
    order: 1;
  }

  .chat_list_section01 .chat_block .sender_thumb{
    width: 49px;
    height: 49px;
    order: 0;
  }

  .chat_list_section01 .chat_block .sender_thumb img {
    width: 28px;
  }

  .chat_list_section01 .chat_block .text_area{
    padding-top: 16px;
    padding-left: 0;
    line-height: 1.5;
    order: 3;
  }

  .chat_list_section01 .logout_link{
    margin-top: 40px;
  }

  /*
  ------------------------------------------
  チャット
  ------------------------------------------
  */

  body.chat_body{
    
  }

  main.chat_main{

  }

  .chat_section{

  }

  .chat_section01{
    padding:10px 0;
  }

  .chat_section01 .keyword_frame{
    margin-left: 0;
  }

  .chat_section01 .keyword_frame .keyword{
    width: 100%;
    max-width: 100%;
    height: 40px;
    border-radius: 10px;
    padding-left: 40px;
    font-size: 18px;
  }

  .chat_section01 .keyword_frame .search_button_block{
    left:12px;
  }

  .chat_section01 .keyword_frame .search_button{
    width:22px;
  }

  .chat_section02{
    padding:0;
    position: relative;
  }



  .chat_section02 .chat_frame{
    min-height:auto;
    height:calc(100vh - 160px);
    scrollbar-width: none;
    -ms-overflow-style: none;
  }
    
  .chat_section02 .chat_frame::-webkit-scrollbar {  
    display: none; 
  }

  .chat_section02 .chat_list{
    width:900px;
    max-width:100%;
    padding:40px 0;
    margin:0 auto;
  }

  .chat_section02 .chat_block{
    margin-bottom: 40px;
  }

  .chat_section02 .chat_block:last-child{
    /* margin-bottom: 0; */
  }


  .chat_section02 .chat_block .chat_info_area .sender_thumb{
    width: 40px;
    height: 40px;
  }

  .chat_section02 .chat_block .chat_info_area .sender_thumb img{
    width:20px;
  }

  .chat_section02 .chat_block .chat_info_area .sender_name{
    line-height: 1.3;
    font-size: 14px;
    padding-left: 12px;
  }


  .chat_section02 .chat_block .chat_contents_area{
    margin-top: 8px;
  }

  .chat_section02 .chat_block .chat_contents_area .chat_text_frame{
    padding:12px 20px;
  }

  .chat_section02 .chat_block .chat_contents_area .chat_text{
    line-height: 1.5;
    font-size: 14px;
  }

  .chat_section02 .chat_block .chat_contents_area .chat_img_frame{
    max-width: 100%;
  }

  .chat_section02 .chat_block .chat_contents_area .chat_img_frame img{
    width:100%;
  }

  .chat_section03{
    padding:24px 0;
  }

  .chat_section03 form{
    width:900px;
    max-width:100%;
    margin:0 auto;
  }

  .chat_section03 .line01{
    display: flex;
    /* justify-content: space-between; */
  } 


  .chat_section03 .line01 .file_area label{
    width:21px;
    flex-shrink: 0;
    margin-right: 12px;
  }

  .chat_section03 .line01 .submit_area{
    flex-shrink: 0;
    margin-left: 32px;
  }

  .chat_section03 .line01 .file_delete{
    font-size: 18px;
    right:-20px;
    top:-20px;
  }

  .chat_section03 .line01 .submit_area .chat_send_button{
    width: 66px;
    height: 33px;
  }


  .chat_section03 .chat_send_form textarea{
    width: 100%;
    height: 160px;
    padding:16px 24px;
    margin-top: 16px;
  }

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

  body.contact_body{
    
  }

  main.contact_main{

  }

  .contact_section{

  }

  .contact_section01{
    padding-top: 60px;
  }

  .contact_section01 h1{
    font-size: 40px;
    z-index:-2;
    line-height: 1;
  }

  .contact_section01 .contact_bg{
    padding:40px 0;
    margin-top: 24px;
  }


  .contact_section01 .white_box{
    padding:40px 24px;
  }

  .contact_section01 .form_text01{
    font-size: 24px;
    margin:0 auto 16px;
    padding-bottom: 3px;
    border-bottom: 2px solid #242424;
  }

  .contact_section01 .form_text02{
    font-size: 20px;
    margin-bottom: 40px;
  }

  .contact_section01 .contact_block{

  }

  .contact_section01 .contact_block .form_line{
    display: flex;
    flex-direction: column;
    margin-bottom: 40px;
  }

  .contact_section01 .contact_block .form_line .left{
    flex-shrink: 0;
    padding-top: 0;
    width:100%;
  }

  .contact_section01 .contact_block .form_line .left.p0{
    padding-top: 0;
  }

  .contact_section01 .contact_block .form_line .title{
    font-size: 18px;
    line-height: 1.3;
  }

  .contact_section01 .contact_block .form_line .title::before{
    height: 24px;
    border-radius: 12px;
    font-size: 14px;
    margin-right: 8px;
    padding:0 12px;
  }

  .contact_section01 .contact_block .form_line .right{
    width:100%;
    margin-top: 24px;
  }

  .contact_section01 .contact_block .form_line .text_input{
    padding:0 8px;
  }

  .contact_section01 .contact_block .form_line textarea{
    height: 263px;
    padding:12px;
    line-height: 1.5;
  }

  .contact_section01 .contact_block .name_flex{
    gap:20px 0;
    flex-direction: column;
    align-items: flex-start;
  }

  .contact_section01 .contact_block .name_flex .name_block{
    font-size: 18px;
    line-height: 1;
    white-space: nowrap;
  }

  .contact_section01 .contact_block .name_flex .name_frame{
    width:100%;
    margin-left: 12px;
  }

  .contact_section01 .contact_block .rule_check{
    margin-top: 20px;
    
  }

  .contact_section01 .contact_block .rule_check span{
    font-size: 18px;
    line-height: 1.3;
  }

  .contact_section01 .contact_block .rule_text{
    
  }

  .contact_section01 .contact_block .rule_text a{
    font-size: 18px;
  }

  .contact_section01 .contact_block .submit_area{
    flex-direction: column;
  }
  

  .contact_section01 .contact_block .submit_frame{
    position: relative;
    margin-top: 24px;
  }

  .contact_section01 .contact_block .submit_frame::after{
    width:11px;
    height:19px;
    right:24px;
    top:22px;
  }

  .contact_section01 .contact_block .submit{
    
    width: 288px;
    height: 64px;
    border-radius: 32px;
    font-size: 20px;
  }

  /*確認画面*/

  .contact_section01 .contact_block .return{
    font-size: 18px;
    padding:0 4px 4px ;
  }

  /*完了画面*/

  .contact_section01 .contact_block .finish_text{
    line-height: 1.8;
    font-size: 18px;
  }


  /*
  ------------------------------------------
  お客様情報登録
  ------------------------------------------
  */

  body.prof_edit_body{
    
  }

  main.prof_edit_main{
    
  }

  .prof_edit_section01{
    padding-top: 60px;
  }

  .prof_edit_section01 .page_title{
    font-size: 24px;
  }

  .prof_edit_section01 .prof_frame{
    margin:40px auto 0;
  }

  .prof_edit_section01 .form_line {
    display: flex;
    flex-direction: column;
  }

  .prof_edit_section01 .form_line + .form_line{
    margin-top: 40px;
  }

  .prof_edit_section01 .form_line .left {
    padding-top: 0;
    width: 100%;
    font-size: 18px;
    line-height: 1.3;
  }

  .prof_edit_section01 .form_line .right {
    width: 100%;
    margin-top: 24px;
  }

  .prof_edit_section01 .form_line .text_input {
    width: 100%;
    padding: 0 16px;
  }

  .prof_edit_section01 .form_line .input_err{
    font-size: 13px;
    margin-top: 2px;
  }

  .prof_edit_section01 .submit_frame{
    margin-top: 56px;
  } 

  .prof_edit_section01 .submit_button{
    width: 288px;
    height: 64px;
    font-size: 20px;
  }

  .prof_edit_section01 .submit_button::after {
    width: 11px;
    height: 19px;
    right: 24px;
    top: 22px;
  }



}/*@media screen and (max-width:767px){*/
