@media(min-width:961px){
  .sp{
    display: none!important;
  }
}/*@media(min-width:961px){*/

@media(max-width:960px){
  .pc{
    display: none!important;
  }


  main{
    padding-top: 56px;
    /* overflow: hidden; */
  }


  .container{
    max-width:480px;
    padding:0 16px;
    margin:0 auto;
    position: relative;
  }

  .hide{
    display: none!important;
  }

  /*
  ------------------------------------------------------
  以下、アニメーション関係
  ------------------------------------------------------
  */


  /*
  ------------------------------------------------------
  以下、共通パーツ
  ------------------------------------------------------
  */

  .center-frame{
    display: flex;
    justify-content: center;
  }

  .common-title-flex{
    display:flex;
    /* padding-left: 72px; */
    position: relative;
    align-items: center;
    color:#82684e;
  }

  .common-cancel-link {

    right: 24px;

}



  header{
    padding: 12px;
  }

  header .header-container{
    max-width:960px;
    margin:0 auto;
  }

  header .header-flex{
    display:flex;
    justify-content:space-between;
  }

  header .header-left{
    display:flex;
  }

  header .header-left .header-logo{
    width:120px;
    margin-right: 0;
    margin-left: 20px;
  }

  header .nav-flex{
    display:none;
  }

  header .header-right{
    width:auto;
    display:flex;
  }

  header .header-right .mypage{
    margin-left: 0;
    margin-right: 12px;
  }

  header .mypage img{
    width:30px;
    margin:0 auto;
  }


  footer{
    overflow: hidden;
    padding:32px 0;
  }

  footer .footer-flex{
    display: flex;
    justify-content: flex-end;
    align-items: flex-end;
    margin-bottom: 40px;
  }

  footer nav{
    display: none;
  }

  footer .border{
    width:100vw;
    height:4px;
    border-radius:2px;
    box-shadow: 0 0 5px rgba(0,0,0,0.35);
    background-color:#685a4b;
    position: absolute;
    /* top:0;
    bottom:0;
    margin:auto; */
  }

  footer .border1{
    left:calc(100% + 36px);
  }
  footer .border2{
    right:calc(100% + 36px);
  }


  footer .footer-logo{
    position: relative;
  }

  footer .footer-logo a{
    display: block;
    width:150px;
    height:64px;
  }

  footer .footer-logo a img{
    display: block;
    width:100%;

  }

  footer p.copy{
    text-align: center;
    color:#685a4b;
    font-size: 10px;
    text-align: center;
    padding-top: 0;
  }

  #myp-footer{
    padding:32px 0;
  }

  #myp-footer .myp-footer-flex{
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
  }

  #myp-footer .myp-footer-link .icon{
    height:50px;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  #myp-footer .myp-footer-link p{
    font-size: 12px;
  }

  #myp-footer .myp-footer-link .footer-icon1{
    width:51px;
  }
  #myp-footer .myp-footer-link .footer-icon2{
    width:42px;
  }
  #myp-footer .myp-footer-link .footer-icon3{
    width:52px;
  }
  #myp-footer .myp-footer-link .footer-icon4{
    width:38px;
  }
  #myp-footer .myp-footer-link .footer-icon5{
    width:48px;
  }


  .timezone-modal{

  }

  .timezone-modal .frame{
    width:460px;

  }



  /*ページネーション*/
  .wp-pagenavi{
    display: flex;
    justify-content: center;
  }

  /*ページネーション*/



  /*講座リスト*/
  .common-lesson-list{
    margin-bottom: 48px;

  }

  .common-lesson-list .lesson-block{
    max-width:460px;
    margin:0 auto;

    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
    flex-wrap: wrap;
    padding:24px 0;
    border-bottom:1px solid #e6ded1;
  }

  .common-lesson-list .lesson-block .report-wait::before {
    width: 100vw;
  }

  .common-lesson-list .lesson-block:last-child{
    border-bottom:none;
    margin-bottom: 0;
  }

  .common-lesson-list .lesson-block .lesson-left{
    width:100%;
    margin-right: 0;
    position: relative;
  }

  .common-lesson-list .lesson-block .lesson-right{
    width:100%;
    margin-top: 16px;
    color:rgba(0,0,0,0.6);
  }

  .common-lesson-list .lesson-block .offer-button{
    position: absolute;
    right:8px;
  }


  .common-lesson-list .lesson-block .prof-box{
    margin-left: -10px;
  }


  .common-lesson-list .lesson-block .lesson-delete-modal-open{
    position: absolute;
    top: auto;
    bottom: 44px;
    margin: auto;
    cursor: pointer;
    left: auto;
    right: 24px;
    width:100px;
    height:30px;
    border-radius: 15px;
    font-size: 16px;
  }

  /*講座リスト*/

  /*講座削除モーダル*/

  .lesson-delete-modal{

  }

  .lesson-delete-modal .frame{
    position: relative;
    width:460px;

  }

  /*講座削除モーダル*/


  /*講座詳細*/
  .common-lesson-detail .info-flex{
    display: flex;
    justify-content: space-between;
    flex-wrap:wrap;
    flex-direction: column;
    align-items: center;
    max-width: 460px;
    margin: 0 auto;
  }

  .common-lesson-detail .info-flex .left{
    width:100%;
  }

  .common-lesson-detail .info-flex .right{
    width:100%;
    margin-top: 16px;
  }


  .common-lesson-detail .prof-box{
    margin-left: -10px;
  }

  /*講座詳細*/


  /*スケジュールリスト*/
  .common-calendar{

  }

  .common-calendar .verti-flex{
    display: flex;
    flex-direction: column-reverse;
  }

  .common-calendar .day-flex{
    margin-bottom: 24px;
  }


  .common-calendar .line{
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    flex-wrap: wrap;
    align-items: flex-start;
    margin-bottom: 8px;
    position: relative;
  }

  .common-calendar .title{
    text-align: center;
    z-index: 3;
    position: absolute;
    right:20px;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
  }

  .common-calendar .title p{
    color:#839299;
    font-size: 20px;
    font-weight: bold;
    line-height:1;
  }



  .common-calendar .day-block{
    width:100%;
    display: flex;
    border: 1px solid #808080;
    position: relative;
  }

  .common-calendar .day-block.has-modal{
    cursor: pointer;
  }

  .common-calendar .hour-block{
    width:318px;
    height:50px;
  }

  .common-calendar .hour-block.has-modal{
    cursor: pointer;
  }

  .common-calendar .hour-block .hour{
    position: absolute;
    top:3px;
    left:1px;
    color:#808080;
    font-size: 12px;
    font-weight: bold;
    line-height:1;
    z-index:2;
  }

  /*スケジュールリスト*/

  /*オファー内容詳細*/

  .common-offer-detail .time-plan{
    text-align: center;
    font-size: 26px;
    color:#666666;
    line-height:1;
    font-weight: bold;
    margin-bottom: 20px;
  }

  .common-offer-detail .time-plan span{
    font-size: 20px;
  }

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

  .common-offer-detail .flex .left{
    max-width: 460px;
    display: flex;
  }

  .common-offer-detail .flex .right{
    max-width: 460px;

  }


  /*オファー内容詳細*/


  /*会員情報box*/

  .common-prof-box{

  }


  /*会員情報box*/


  /*講師リスト*/
  .common-teacher-list{

  }

  .common-teacher-list .teacher-block{
    display:flex;
    justify-content:space-between;
    padding:16px 0 24px;
    border-top: 1px solid #665b4c;
    flex-wrap: wrap;
  }

  .common-teacher-list .teacher-block .teacher-left{
    width:100%;
    display:flex;
  }

  .common-teacher-list .teacher-block .teacher-right{
    display: none;
  }

  /*講師リスト*/


  /*講師検索項目*/
  .common-teacher-search-area{
    max-width: 330px;
    margin:0 auto;
    padding-top: 10px;
  }

  .common-teacher-search-area .search-flex{
    display: flex;
    justify-content: space-between;
    align-items:center;
    flex-wrap: wrap;
    flex-direction: column;
    margin-top: -16px;
  }

  .common-teacher-search-area p.language-text{
    padding-left: 32px;
    /* margin-top: -10px; */
    padding-bottom: 16px;
  }

  .common-teacher-search-area .search-flex .search-frame{
    width:100%;
    display: flex;
    margin-bottom: 16px;
  }

  .common-teacher-search-area .search-flex .search-frame.mb0{
    margin-bottom: 0;
  }

  .common-teacher-search-area .search-flex .search-frame-even{
    justify-content:flex-end;
  }

  .common-teacher-search-area .search-flex .search-frame-odd{
    justify-content:flex-end;
  }

  .common-teacher-search-area .search-flex .sp-center{
    justify-content:center!important;
    padding-left: 22px;
  }

  .common-teacher-search-area .search-frame-even .min-flex{
    flex-direction:row-reverse;
  }

  .common-teacher-search-area .search-frame-even .min-flex .title{
    margin-left: 0;
    margin-right: 8px;
    margin-bottom: 0;
  }

  .common-teacher-search-area .search-flex .search-frame-other{
    justify-content:center;
    width:100%;
  }

  .common-teacher-search-area .search-block.w-240{
    width:240px;
  }
  .common-teacher-search-area .search-block.w-170{
    width:170px;
    /* margin-left: 90px; */
  }

  /*講師検索項目*/


  /*ソート並び替えリスト*/

  .common-sort-list{
    display: flex;
    justify-content: space-around;
    align-items: center;
  }

  .common-sort-list .sort-link{

    margin:0;
  }

  /*ソート並び替えリスト*/


  /*面談希望モーダル*/
  .interview-modal{

  }

  .interview-modal .frame{
    width:460px;
  }

  /*面談希望モーダル*/


  /*メッセージ完了モーダル*/

  /*予約キャンセルモーダル*/
  .message-complete-modal{
    position: fixed;
    width:100%;
    height:100vh;
    top:0;
    left:0;
    z-index:100;
    background-color: rgba(0,0,0,0.6);
    display: flex;
    justify-content: center;
    align-items: center;
    transition: 0.4s;
    opacity: 0;
    pointer-events: none;
  }

  .message-complete-modal.show{
    opacity: 1;
    pointer-events: auto;
  }

  .message-complete-modal .frame{
    position: relative;
    width:480px;
    padding:40px 24px;
    background-color:rgba(255,255,255,0.9);
  }

  .message-complete-modal .frame p{
    font-weight: bold;
    font-size: 18px;
    text-align: center;
  }


  /*メッセージ完了モーダル*/


  /*ツール表示モーダル*/
  .tool-modal-open{
    cursor: pointer;
    position: relative;
  }

  .tool-modal{

  }

  .tool-modal{
    position: absolute;
    width:400px;
    top:calc(100% - 20px);
    left:auto;
    right:24px;
    transform: translateX(0);
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
  }


  /*予約キャンセルモーダル*/
  .matching-cancel-modal{

  }


  .matching-cancel-modal .frame{
    position: relative;
    width:460px;
  }

  /*予約キャンセルモーダル*/

  /*面談キャンセルモーダル*/
  .interview-cancel-modal{

  }


  .interview-cancel-modal .frame{
    width:460px;
  }


  /*面談キャンセルモーダル*/

  /*オファーキャンセルモーダル*/

  .offer-cancel-modal{

  }


  .offer-cancel-modal .frame{
    position: relative;
    width:460px;
  }

  /*予約キャンセルモーダル*/


  /*退会モーダル*/
  .retire-modal{

  }

  .retire-modal .frame{
    position: relative;
    width:460px;
    padding:64px 24px 48px;
    background-color:rgba(255,255,255,0.9);
  }

  .retire-modal textarea{
    padding:12px;
    display: block;
    width:100%;
    height:160px;
    background-color:#fff;
    border:1px solid #000000;
    margin-bottom: 44px;
  }

  .retire-modal .retire-button{
    margin:0 auto;
  }

  .retire-modal .retire-cancel{
    right:24px;
  }

  /*退会モーダル*/


  /*
  ------------------------------------------------
  トップページ
  ------------------------------------------------
  */
  body.top-body{

  }
  main.top-main .common-title-flex{
    display:flex;
    margin-left: 72px;
    position: relative;
    align-items: center;
    color:#82684e;
    margin-bottom: 40px;
  }

  main.top-main .common-title-flex .en{
    font-size: 45px;
  }

  main.top-main .common-title-flex .ja{
    margin-left: 56px;
    line-height:1;
    font-size: 16px;
  }


  .top-section1{
    background-image: url('../img/top/main-view.png');
    padding-top: 64px;
    padding-bottom: 0;
    min-height: auto;
  }

  .top-section1 .frame{
    max-width: 580px;
    padding:0 12px 40px;
    position: relative;
  }

  .top-section1 .p1{
    display:flex;
    align-items: flex-start;
    flex-direction: column;
    font-size: 43px;
    margin-bottom: 16px;
  }

  .top-section1 .p1 span{
    font-size: 25px;
    margin-left: 0;
    padding-bottom: 0;
  }

  .top-section1 .p2{
    padding-left:0;
    display:flex;
    align-items: center;
    font-size: 15px;
    font-weight: bold;
    line-height:1;
    color:#82684e;
    /* margin-bottom: 16px; */
  }

  .top-section1 .p2 span{
    font-size: 22px;
    margin-left: 4px;
  }

  .top-section1 .btn{
    position: absolute;
    margin:0;
    bottom:-16px;
    left:32px;
  }

  .top-section1 .top-text{
    width:230px;
    margin:24px 0 0 0;
  }

  .top-section1 .campaign-text{
    display: flex;
    justify-content: center;
  }

  .top-section1 .campaign-text p{
    color:#614e30;
    font-size: 18px;
    font-weight: bold;
  }

  .top-section1 .campaign-text p span{
    color:#ff0000;
  }

  .top-sp-section1{
    background-color: #fff;
    padding-bottom: 32px;
    padding-top: 10px;
  }

  .top-sp-section1 .log{
    width:95px;
    display: block;
    margin:0 16px 24px auto;
  }

  .top-sp-section1 .log img{
    width:100%;
  }

  .top-sp-section1 .campaign-text p{
    color:#614e30;
    font-size: 18px;
    font-weight: bold;
    margin-top: 16px;
  }

  .top-sp-section1 .campaign-text p span{
    color:#ff0000;
  }

  .top-section2{
    padding-bottom: 40px;
    background-color: #fff;
  }

  .top-section2 .swiper-block{
    position: relative;
    transform: translateY(0);
    max-width:480px;
    margin:0 auto;
  }

  .top-section2 .swiper-container{
    height:auto;
    padding-bottom: 24px;
  }

  .top-section2 .swiper-button{
    width:61px;
    z-index:10;
    cursor:pointer;
  }


  .top-section2 .swiper-button-next{
    right:0;
    /* left:calc(50% + 350px); */
    left:auto;
  }

  .top-section2 .swiper-button-prev{
    left:0;
    right:auto;
    /* right:calc(50% + 340px); */
  }

  .top-section2 .swiper-slide{
    width:195px;
    /* margin:0 28px; */
    margin: 0 20px;
  }

  .top-section2 .card{
    width:195px;
    height:185px;
    position: relative;
    margin-bottom: 24px;
  }

  .top-section2 .card:last-child{
    margin-bottom: 0;
    }

  .top-section2 .card .thumb{
    display: block;
    margin:0 auto;
    width:175px;
    height:175px;
    border-radius:50%;
    box-shadow:10px 10px 6px rgba(0,0,0,0.35);
  }

  .top-section2 .card .thumb img{
    width:100%;
    height:100%;
    border-radius:50%;
    object-fit: cover;
  }

  .top-section2 .card .teacher-name{
    position: absolute;
    left:0;
    bottom:0;
    width:100%;
    height:28px;
    border-radius: 14px;
    background-color: #f2e5d0;
    box-shadow:10px 10px 6px rgba(0,0,0,0.35);
    padding:0 6px;
    display: flex;
    justify-content: center;
    align-items: center;
  }

  .top-section2 .card .teacher-name p{
    white-space: nowrap;
    overflow: visible;
    text-overflow: ellipsis;
    color:#5a5782;
    font-weight: bold;
    line-height:1;
  }

  .top-section3{
    position: relative;
    /* background-color:#fff; */

    padding-bottom: 64px;
  }

  .top-section3::before{
    background-color:#fff;
    content:"";
    width:100%;
    height:100%;
    z-index:-5;
    position: absolute;
    top:0;
    left:0;
  }
  .top-section3 .container{
    padding:0 16px;
  }


  .top-section3 .white-box{
    position: relative;
    padding:0;
  }

  .top-section3 .white-box::before{
    content:'';
    width:100%;
    height:100%;
    background-color:#fff;
    position: absolute;
    top:0;
    left:0;
    z-index:-4;
  }

  .top-section3 .common-teacher-search-area{
    margin-bottom: 24px;
    padding-bottom: 40px;
    position: relative;
  }


  .top-section3 .advanced{
    right:-56px;

  }

  .top-section3 .calendar-text1{
    text-align: left;
    color:#94866f;
    font-size: 18px;
    font-weight: bold;
    line-height:1.2;
    margin-bottom: 12px;
  }

  .top-section3 .calendar-text2{
    text-align: center;
    color:#614e30;
    font-size: 14px;
    line-height:1;
    margin-bottom: 40px;
  }

  .top-section3 .calendar-text3{
    text-align: center;
    color:#614e30;
    font-size: 14px;
    line-height: 1.3;
    margin-bottom: 12px;
  }

  .top-section3 .calendar-text4{
    display: flex;
    justify-content: center;
    margin-bottom: 32px;
    color:#614e30;
    font-size: 12px;
    line-height:1.5;
  }

  .top-section3 .button-flex{
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
  }

  .top-section3 .button-flex .block{
    width:410px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin:0 0 56px;
  }

  .top-section3 .button-flex .block:last-child{
    margin-bottom: 0;
  }

  .top-section3 .button-flex .block p{
    color:#614e30;
    line-height:1;
    text-align: left;
    font-size: 18px;
  }

  .top-section3 .button-flex .block a{
    width:225px;
    padding:0 20px;
    margin:0;
  }

  .top-section3 .button-flex .block a span{
    font-size: 12px;
  }

  .top-section3 .block-title{

    margin-bottom: 24px;
  }

  .top-section3 .calendar-block{
    max-width:480px;
    width:480px;
    margin-left: -16px;
    overflow:hidden;
    padding-left: 32px;
    padding-right: 0;
    position: relative;
    justify-content: space-between;
  }

  .top-section3 .calendar-block .icon{
    position: absolute;
    width:24px;
    left:4px;
  }

  .top-section3 .calendar-list{
    display: flex;
    flex-wrap: wrap;
    /* justify-content: space-between; */
  }

  .top-section3 .calendar-list .day-block{
    width:56px;
    margin: 0 3px;
    /* margin-right: 0; */
    margin-bottom: 14px;
  }

  .top-section3 .calendar-list .day-block:nth-child(7n){
    margin-right: 0;
  }


  .top-section4{
    padding:56px 0 56px;
  }

  .top-section4 .container{
    padding:0 16px;
  }

  /* main.top-main .top-section4 .common-title-flex {
    margin-left: 144px;
} */

  main.top-main .top-section4 .common-title-flex {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 390px;
    margin-left: 24px;
    padding-left: 72px;
    position: relative;
    align-items: center;
    color: #82684e;
    margin-bottom: 40px;

  }

  main.top-main .top-section4 .common-title-flex::before{
    left:0;
    top: 8px;
    transform: translateY(0);
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
  }

  main.top-main .top-section4 .common-title-flex .en{
    width:100%;
  }
  main.top-main .top-section4 .common-title-flex .ja{
    width:100%;
    text-align: right;
    margin-top: 6px;
    margin-left: 0;
  }

  .top-section4 .feature-frame{
    display:flex;
    justify-content:center;
  }

  .top-section4 .feature-block{
    margin-bottom: 40px;
  }

  .top-section4 .feature-block .title{
    display:flex;
    flex-direction: column;
    align-items:flex-start;
    position: relative;
    padding-left: 32px;
    margin-bottom: 24px;
    color:#82684e;
    font-size: 26px;
    font-weight: bold;
    line-height:1;
    width: 100%;
    text-align: left;
  }

  .top-section4 .feature-block .title::before{
    content:'・';
    color:#82684e;
    font-size: 30px;
    font-weight: bold;
    line-height:1;
    position: absolute;
    top:-2px;
    left: 0;
    transform: translateY(0);
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
  }

  .top-section4 .feature-block .title span{
    width: 100%;
    font-size: 24px;
    margin-left: 0;
    text-align: right;
    margin-top: 8px;
  }

  .top-section4 .feature-block .text{

    padding-left: 32px;

  }

  .top-section5{
    background-color:#fff;
    padding-top: 72px;
    padding-bottom: 56px;
  }

  main.top-main .top-section5 .common-title-flex {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 390px;
    margin-left: 24px;
    padding-left: 72px;
    position: relative;
    align-items: center;
    color: #82684e;
    margin-bottom: 40px;

}

  main.top-main .top-section5 .common-title-flex::before{
    left:0;
    top: 8px;
    transform: translateY(0);
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
  }

  main.top-main .top-section5 .common-title-flex .en{
    width:100%;
  }
  main.top-main .top-section5 .common-title-flex .ja{
    width:100%;
    text-align: right;
    margin-top: 6px;
    margin-left: 0;
  }

  .top-section5 .white-box{
    padding:0;
    background-color:#fff;
  }

  .top-section5 .how-list{

  }

  .top-section5 .how-list .angle{
    width:45px;
    margin:16px 0 16px 58px;
  }

  .top-section5 .how-block{
    display:flex;
    justify-content:space-between;
    flex-wrap: nowrap;
    position: relative;
  }

  .top-section5 .how-block .left{
    width:160px;
  }

  .top-section5 .how-block .left img{
    width:100%;
  }

  .top-section5 .how-block .right{
    width:265px;
    max-width:100%;
    position: relative;
  }


  .top-section5 .how-block .p2{
    color:#685a4b;
    line-height:1.8;
    font-size: 14px;
  }

  .top-section5 .how-block .link{
    justify-content: center;
    position: static;
    right:0;
    margin:16px 0 0 auto;
  }

  .top-section6{
    padding:56px 0 72px;
  }

  main.top-main .top-section6 .common-title-flex {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 360px;
    margin-left: 24px;
    padding-left: 72px;
    position: relative;
    align-items: center;
    color: #82684e;
    margin-bottom: 40px;

}

  main.top-main .top-section6 .common-title-flex::before{
    left:0;
    top: 8px;
    transform: translateY(0);
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
  }

  main.top-main .top-section6 .common-title-flex .en{
    width:100%;
  }
  main.top-main .top-section6 .common-title-flex .ja{
    width:100%;
    text-align: right;
    margin-top: 6px;
    margin-left: 0;
  }

  .top-section6 .common-title-flex{
    margin-left: 24px!important;
  }

  .top-section6 .p1{
    text-align: left;
    color:#82684e;
    font-weight: bold;
    margin-bottom: 8px;
    letter-spacing: -0.02em;
  }

  .top-section6 .p2{
    text-align: left;
    color:#82684e;
    font-size: 14px;
    margin-bottom: 32px;
  }

  .top-section6 .about-list{
    display: flex;
    flex-wrap: wrap;
    flex-direction:column;
    align-items: center;
  }

  .top-section6 .about-block{
    margin-bottom: 32px;
    margin-right: 0;
  }



  /*
  ------------------------------------------------
  デフォルトページ
  ------------------------------------------------
  */
  body.def-body{

  }

  main.def-main{
    padding-bottom: 72px;
  }


  /*
  ------------------------------------------------
  講師になりたい方へ
  ------------------------------------------------
  */
  body.info-body{

  }

  main.info-main{
    padding-top: 40px;
  }

  main.info-main .common-title-flex{
    display:flex;
    /* margin-left: 0; */
    margin-bottom: 40px;
  }

  main.info-main .common-title-flex .en.fz30 {
    font-size: 30px;
    font-weight: normal;
  }

  .info-section1{
    padding-bottom: 40px;
  }

  main.info-main .info-section1 .common-title-flex{
    margin-left: 56px;
  }

  main.info-main .info-section1 .common-title-flex::before{
    left:-56px;
  }

  .info-section1 .text-flex{
    display:flex;
    justify-content:space-around;
    flex-wrap: wrap;
    margin-top: 32px;
    margin-bottom: 32px;
  }

  .info-section1 .text-flex .text{
    white-space:nowrap;
  }

  .info-section1 .text-flex .text2{
    margin:0;
  }

  .info-section1 .text-flex .text3{
    width:100%;
    margin-top: 24px;
  }

  .info-section1 .white-box{
    max-width:770px;
    margin:0 auto;
    background-color:none;
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
    padding:24px 0;
    position: relative;
  }

  .info-section1 .white-box::before{
    content:"";
    width:100vw;
    height:100%;
    background-color: #fff;
    position: absolute;
    z-index:-2;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
  }

  .info-section1 .white-box p{
    display: flex;
    justify-content: center;
    text-align: left;
  }

  .info-section2{
    padding-bottom: 48px;
  }

  main.info-main .info-section2 .common-title-flex {
    display: flex;
    margin-left: 80px;
  }
  .info-section2 p.step-text{
    margin-top: -8px;
  }

  .info-section2 .step-frame{
    max-width:800px;
    margin:0 auto;
  }


  .info-section2 .step-block .left{
    width:160px;
  }

  .info-section2 .step-block .right{
    width:270px;
    max-width:100%;
    position: relative;
    margin-top: 20px;
  }

  .info-section2 .step-block .more{
    position: static;
    right:0;
    margin:24px 16px 0 auto;
  }

  .info-section2 .step-block .sign{
    position: static;
    margin:24px auto 0;
  }


  .info-section3{
    padding:32px 0 32px;
    background:#fff;
  }

  main.info-main .info-section3 .common-title-flex {
    display: flex;
    margin-left: 72px;
    margin-bottom: 40px;
}


  .info-section3 p.p1{
    padding-left:0;
    color:#685a4b;
    font-size: 14px;
    line-height:2.1;
  }

  .info-section4{
    padding:32px 0 72px;
  }

  main.info-main .info-section4 .common-title-flex {
    display: flex;
    margin-left: 72px;
    margin-bottom: 32px;
    line-height:1.3;
}

  main.info-main .info-section4 .common-title-flex:before{
    position: absolute;
    top: 0px;
    transform: translateY(0);
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
  }


  .info-section5{
    padding-bottom: 30px;
  }

  main.info-main .info-section5 .common-title-flex {
    display: flex;
    margin-left: 72px;
}

  .info-section5 .info-pop-open{
    cursor: pointer;
  }

  .info-section5 .text-flex{
    display: flex;
    flex-direction: column;
    margin-bottom: 40px;
    padding-left:0;
  }

  .info-section5 .text-flex .block{
    width:100%;
    margin-right: 0;
    padding-left:  0;
    position: relative;
    padding-top: 2px;
    margin-bottom: 48px;
  }


  .info-section5 .text-flex .block p{
    color:#685a4b;
    font-size: 14px;
    line-height:2.1;

    padding-left: 52px;
  }

  .info-section5 .text-flex .block .mt56{
    margin-top:56px;
  }

  /* .info-section5 .text-flex .block img{
    width:235px;
    display:block;
    margin:40px auto 0;
  } */

  .info-section5 .img-block{
    width:235px;
    margin:32px auto 0;
    display:flex;
    justify-content:center;
  }

  .info-section5 .img-block .left{
    width:50px;
  }

  .info-section5 .img-block .left p{
    font-size: 14px;
    line-height:1;
    color:#685a4b;
    margin-bottom: 8px;
    letter-spacing:0;
    padding-left: 0;
  }

  .info-section5 .img-block .left img{
    width:21px;
  }

  .info-section5 .img-block .right{
    width:185px;
    margin:0 0 0 auto;
    border:2px solid #705f42;
  }

  .info-section5 .img-block .right img{
    width:100%;
  }


  .info-section5 .info-popup{
    position: fixed;
    width:100%;
    height:100vh;
    top:0;
    left:0;
    z-index:100;
    background-color: rgba(0,0,0,0.6);
    display: flex;
    justify-content: center;
    align-items: center;
    transition: 0.4s;
    opacity: 0;
    pointer-events: none;
  }

  .info-section5 .info-popup.show{
    opacity: 1;
    pointer-events: auto;
  }

  .info-section5 .info-popup .frame{
    max-height:70vh;
    background-color:rgba(255,255,255,0.9);
    overflow-y: scroll;
  }

  .info-section5 .info-popup .frame img{
    width:460px;
  }





  /*
  ------------------------------------------------
  ultimate 共通
  ------------------------------------------------
  */

  .common-required{
    display: flex;
    justify-content: flex-end;
    font-size: 13px;
  }

  .common-required span{
    font-size: 18px;
    font-weight: bold;
    color:#ff0000;
    margin-right: 10px;
  }
  /*
  ------------------------------------------------
  ログイン画面
  ------------------------------------------------
  */

  main.login-main{

  }


  main.login-main .um-notice{
    /* display: none; */
  }




  /*
  ------------------------------------------------
  ログアウト
  ------------------------------------------------
  */

  .logout-modal{

  }

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

  .logout-modal .frame{
    width:460px;
    height:auto;
    padding:40px 0 40px;
  }

  .logout-modal .logout-close{
    position: absolute;
    width:37px;
    bottom:28px;
    right:32px;
  }



  /*
  ------------------------------------------------
  新規登録
  ------------------------------------------------
  */

  main.register-main{

  }

  .resister-section .common-cancel-link{
    bottom:-12px;
  }


  /*
  ------------------------------------------------
  パスワードリセット
  ------------------------------------------------
  */

  main.password-reset-main{

  }



  /*
  ------------------------------------------------
  アドレス変更
  ------------------------------------------------
  */

  body.adress-change-body{

  }

  main.adress-change-main{

  }

  .adress-change-section{
    padding-bottom: 40px;
  }

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

  main.contact-main{

  }

  .contact-block{
    margin-top: 20px;
  }

  .contact-block .radio-flex{
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    margin-bottom: 56px;
  }

  .contact-block .title{
    font-size: 20px;
    line-height:1;
    font-weight: bold;
    display: inline-block;
    margin-bottom: 8px;
  }

  .contact-block .radio-area label{
    margin-left: 0;
    margin-right: 56px;

  }

  .contact-block .flex{
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    margin-bottom: 32px;
  }

  .contact-block .flex .left,
  .contact-block .flex .right{
    width:100%;
  }

  .contact-block .flex .left{
    margin-bottom: 32px;
  }

  .contact-block .flex .left p{
    font-size: 13px;
    margin-top: 4px;
    /* display: flex;
    justify-content: center; */
  }

  .contact-block .block{
    margin-bottom: 32px;
  }


  /*
  ------------------------------------------------
  新規会員登録(入力フォーム)
  ------------------------------------------------
  */

  body.new-prof-body{

  }

  body.new-prof-body .time-zone-block{
    pointer-events: none;
  }

  main.new-prof-main{

  }

  .new-prof-section {
    padding-bottom: 72px;
  }

  .new-prof-section .required-block{
    margin-bottom: 32px;
  }


  .new-prof-section .p2{

    text-align: left;

  }

  .new-prof-section .common-cancel-link{
    bottom:20px;
  }

  .prof-acf-block{

  }


  .prof-acf-block .form-list::before{
    content:none;
    height:100%;
    width:42px;
    background-color: rgba(130,130,130,0.05);
    position: absolute;
    z-index:-3;
    top:0;
    left:274px;
  }


  .prof-acf-block .form-list::after{
    top: -12px;
    left: auto;
    right: 17px;
  }

  .prof-acf-block .form-block{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding-bottom: 24px;
  }

  .prof-acf-block .form-block.center-frame{
    flex-direction: column;
    align-items: center;
  }

  .prof-acf-block .form-block .left{
    width:auto;
    text-align: left;
  }

  .prof-acf-block .form-block .center{
    width:70px;
    display: flex;
    justify-content: center;
    padding-top: 3px;
  }
/*
  .prof-acf-block .form-block .center .show-switch{
    width:30px;
    height:14px;
    border-radius: 7px;
    background-color:#fff;
    border:1px solid #424242;
    position: relative;
    margin-top: 4px;
    cursor: pointer;
  }

  .prof-acf-block .form-block .center .show-switch::before{
    content:'';
    width:8.5px;
    height:9px;
    background-image: url('../img/common/show-ng.png');
    position: absolute;
    top:0;
    bottom:0;
    margin:auto;
    left:auto;
    right:3px;
  }

  .prof-acf-block .form-block .center .show-switch.show::before{
    content:'';
    width:9px;
    height:9px;
    background-image: url('../img/common/show-ok.png');
    position: absolute;
    top:0;
    bottom:0;
    margin:auto;
    left:2px;
    right:auto;
  }
 */

  .prof-acf-block .form-block .right{
    width:100%;
    margin-top: 16px;
  }

  .prof-acf-block .form-block .err-text{
    color:#FF0000;
    font-size: 14px;
  }

  .prof-acf-block .form-block .kind-flex{
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: space-around;
    margin-top: 0;
  }

  .prof-acf-block .form-block .kind-flex label{
    margin-right: 0;
  }


  .prof-acf-block .form-block .kind-flex p{
    font-size: 14px;
    font-weight: bold;
    color:#82684e;
    width:100%;
    display: flex;
    margin-top: 16px;
    justify-content: flex-end;
  }

  /* .prof-acf-block .form-block .timezone-flex{
    display: flex;
    flex-direction: column;
  }

  .prof-acf-block .form-block .timezone-flex .member_time_zone_frame{
    margin-top: 16px;
  }


  .prof-acf-block .form-block .timezone-flex .timezone1{
    width:100%;
    margin-right: 0;
    margin-bottom: 24px;
  }


  .prof-acf-block .form-block .timezone-flex .timezone2{
    width:100%;
  } */

  .prof-acf-block .form-block .interview-flex{

  }

  .prof-acf-block .form-block .interview-modal{

  }

  .prof-acf-block .form-block .tel-flex{
    margin-top: 32px;
  }


  .prof-acf-block .form-block .gender-flex{
    display: flex;
    align-items: flex-start;
    justify-content:space-between;
    flex-direction: column;
  }

  .prof-acf-block .form-block .gender-flex label{
    display: flex;
    align-items: center;
    margin-right: 0;
    font-size: 18px;
    cursor: pointer;
    margin-bottom: 8px;
  }



  .prof-acf-block .media-flex{
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    align-items: center;
    max-width:830px;
    margin:0 auto 56px;
  }


  .prof-acf-block .media-left{
    width:250px;
  }


  .prof-acf-block .media-right{
    width:100%;
    margin-top: 32px;
  }


  /*
  ------------------------------------------------
  MYP編集
  ------------------------------------------------
  */

  body.prof-edit-body{

  }

  body.prof-edit-body .time-zone-block{
    pointer-events: none;
  }

  main.prof-edit-main{

  }

  .prof-edit-section {
    padding-bottom: 72px;
  }

  .prof-edit-section .required-block{
    display: flex;
    justify-content: flex-end;
    margin-top: 24px;
    margin-bottom: 32px;
  }

  .prof-edit-section .link-flex{
    display: flex;
    justify-content:space-between;
  }

  .prof-edit-section .kind-text{
    font-size: 18px;
    padding-left: 0;
    text-align: center;
  }

  .prof-edit-section .rule-block{
    width:100%;

  }

  .prof-edit-section .pay-area .pay-text{
    color:#82684e;
    font-size: 18px;
    text-align: left;
  }

  .prof-edit-section .pay-area .label-flex{
    display: flex;
    align-items: center;
    margin-bottom: 16px;
    margin-top: 32px;
  }

  .prof-edit-section .pay-area .pay-block{
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 16px;
  }

  .prof-edit-section .pay-area .pay-block .left{
    width:auto;
    text-align: left;
  }


  .prof-edit-section .pay-area .pay-block .right{
    width:100%;
    max-width:100%;
    margin-top: 8px;
  }

  .prof-edit-section .pay-area .pay-block .right p{
    padding-left: 0;
  }

  .prof-edit-section .common-cancel-link {
    bottom: 154px;
  }

  .prof-edit-section .retire-link{
    width:fit-content;
    position: static;
    left:48px;
    bottom:-24px;
    cursor: pointer;
    margin-top: 80px;
    margin-left: 32px;
  }

  /*
  ------------------------------------------------
  空きスケジュール設定
  ------------------------------------------------
  */

  body.schedule-set-index-body{

  }

  main.schedule-set-index-main{

  }

  .schedule-set-index-section{
    padding-top: 40px;
    padding-bottom: 72px;
  }

  .schedule-set-index-section .common-calendar{
    margin-top: 32px;
  }



  /*
  ------------------------------------------------
  空きスケジュール設定(1日内)
  ------------------------------------------------
  */

  body.schedule-set-detail-body{

  }

  main.schedule-set-detail-main{

  }

  .schedule-set-detail-section{
    padding-top: 40px;
    padding-bottom: 72px;
  }

  .time-block-area{
    position: relative;
    max-width:810px;
    margin:64px auto 0;
  }

  .time-block-area .set-time-list{
    margin-bottom: 32px;
  }

  .time-block-area .hour-block .hour{

    font-size: 16px;
    top:4px;
    left:6px;
  }

  .schedule-set-detail-section .btn-flex{
    display: flex;
    justify-content: space-between;
    margin-bottom: 40px;
    padding:0 24px 0 0;
  }

  .repeat-modal{

  }

  .repeat-modal .frame{
    width:460px;

  }

  /*
  ------------------------------------------------
  講座編集
  ------------------------------------------------
  */

  main.lesson-edit-main{

  }

  .lesson-edit-section {
    padding-bottom: 72px;
  }

  .lesson-acf-block .flex{

    margin-bottom: 16px;
  }

  .lesson-acf-block .flex .left,
  .lesson-acf-block .flex .right{
    width:100%;
  }

  .lesson-acf-block .img-flex .left,
  .lesson-acf-block .img-flex .right{
    width:100%;
  }


  /*
  ------------------------------------------------
  レッスンシングルページ
  ------------------------------------------------
  */

  main.single-lesson-main{

  }

  .single-lesson-section {
    padding-bottom: 72px;
  }

  .single-lesson-section .container{
    padding:0;
  }

  .single-lesson-section .area2{
    padding:0 16px;
  }

  .single-lesson-section .area2 .img-flex{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-bottom: 40px;
  }

  .single-lesson-section .area2 .img-flex .img-area{
    width:100%;
    margin-bottom: 16px;
  }

  .single-lesson-section .area2 .img-flex .img-area img{
    max-width: 100%;
  }

  .single-lesson-section .area2 .img-flex .text-area{
    width:100%;
  }

  .single-lesson-section .area2 .img-flex .text-area p{
    line-height:1.5;
  }


  /*
  ------------------------------------------------
  カレンダー日毎
  ------------------------------------------------
  */
  body.calendar-body{

  }

  main.calendar-main{
    padding-top: 48px;
  }

  .calendar-section{
    padding-bottom: 72px;
  }

  .calendar-section .container{
    max-width:910px;
    padding:0 8px;
  }

  .calendar-section .common-teacher-search-area{
    margin-top: 56px;
    margin-bottom: 24px;
  }

  .calendar-section .wp-pagenavi{
    margin-bottom: 32px;
  }

  .calendar-section .common-calendar .line{
    flex-direction: row;
  }

  .calendar-section .common-calendar .thumb-frame{
    width:68px;
    position: relative;
  }

  .calendar-section .common-calendar .day-block{
    width:390px;
  }

  .calendar-section .common-calendar .hour-block {

    height: 72px;
}

  .calendar-section .common-calendar .thumb-frame .thumb{
    width:68px;
    height:68px;
  }

  .calendar-section .common-calendar .info-area .name{
    margin-right: 24px;
  }



  /*
  ------------------------------------------------
  講師紹介ページ
  ------------------------------------------------
  */

  body.single-member-body{

  }
  main.single-member-main{

  }

  main.single-member-main .delete-result{
    margin-top: 24px;
    display: flex;
    justify-content: center;
  }

  main.single-member-main .delete-result p{
    color:#ff0000;
  }

  .single-member-section1{
    padding-bottom: 32px;

  }

  .single-member-section1 .container{
    padding:0 24px;
  }

  .single-member-section1 .name-flex{
    padding-left: 0;
  }


  .single-member-section1 .flex .info-area{
    width:100%;
    margin-right: 0;
  }

  .single-member-section1 .introduction{
    width:100%;
  }

  .single-member-section2{
    padding:64px 0 56px;
    background-color:#fff;
  }

  .single-member-section2 .container{
    padding:0;
  }

  .single-member-section2 .youtube-frame{
    aspect-ratio: 1 / 0.56;
    margin-bottom: 48px;
  }

  .single-member-section2 .youtube-frame iframe{
    display: block;
    width:100%;
    height:100%;
  }

  .single-member-section2 .lesson-area{
    padding-top: 32px;
    margin-bottom: 32px;
  }

  .single-member-section2 .common-lesson-list{
    margin-bottom:0;
  }

  .single-member-section3{
    padding-top: 32px;
    padding-bottom: 40px;
  }


  .single-member-section4{
    padding:56px 0 64px;
    background-color:#fff;
  }

  .single-member-section4 .comment-list{
    margin-top: 40px;
  }

  .single-member-section4 .comment-block{
    flex-direction: column;
  }

  .single-member-section4 .comment-block .time{
    font-size: 18px;
    margin-bottom: 8px;
  }

  .single-member-section4 .comment-block .comment{
    width:100%;
    font-size: 14px;
    line-height:1.8;
  }

  /*
  ------------------------------------------------------
  以下、講師検索
  ------------------------------------------------------
  */

  body.search-teacher-body{

  }
  main.search-teacher-main{

  }

  .search-teacher-section1{
    padding-bottom: 72px;
  }

  .search-teacher-section2{

  }

  .search-teacher-section2 .common-teacher-list{
    margin-bottom: 32px;
  }

  .search-teacher-section2 .common-sort-list{
    margin-bottom: 24px;
  }

  /*
  ------------------------------------------------------
  以下、レッスン検索
  ------------------------------------------------------
  */

  body.search-lesson-body{

  }
  main.search-lesson-main{

  }

  .search-lesson-section1{
    padding-bottom: 48px;
  }

  .search-lesson-section1 .search-area{
    margin-top: 36px;

  }

  .search-lesson-section1 .search-flex{
    display: flex;
    justify-content:space-between;
    flex-wrap: wrap;
    flex-direction: column;
    align-items:center;
  }

  .search-lesson-section1 .search-block{
    margin-bottom: 24px;
  }

  .search-lesson-section1 .search-block1{
    width:100%;
  }

  .search-lesson-section1 .search-block2{
    width:400px;
  }

  .search-lesson-section2{

  }

  .search-lesson-section2 .container{
    padding:0;
  }


  /*
  ------------------------------------------------------
  以下、メッセージ送信
  ------------------------------------------------------
  */

  body.send-message-body{

  }
  main.send-message-main{

  }

  .send-message-section{
    padding-bottom: 72px;
  }

  .send-message-section .send-area{
    margin-top: 56px;
  }

  .send-message-section .flex{
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    flex-wrap: wrap;
  }

  .send-message-section .block1{
    width:100%;
  }

  .send-message-section .block2{
    width:100%;
  }

  .send-message-section .label-block{
    width:100%;
    display: flex;
    align-items: center;
    margin-bottom: 32px;
  }

  .send-message-section .title{
    display: flex;
    align-items: center;
    margin-bottom: 12px;
    padding-left: 8px;
    color:#665b4c;
    font-size: 20px;
    font-weight: bold;
    line-height:1;
  }

  .send-message-section .block .title span{
    font-size: 14px;
    margin-left: 32px;
    font-weight: normal;
  }

  .send-message-section .flex2{
    display:flex;
    align-items:flex-start;
    flex-direction: column;
    margin-bottom: 32px;
  }

  .send-message-section .flex2.mb40{
    margin-bottom: 32px;
  }

  .send-message-section .flex2 input{
    width:100%;
    margin-bottom: 8px;
    margin-right: 0;
  }


  .send-message-section .common-cancel-link{
    right:16px;
    bottom:-6px;
  }


  /*
  ------------------------------------------------------
  以下、メッセージリスト
  ------------------------------------------------------
  */

  body.message-list-body{

  }
  main.message-list-main{

  }

  .message-list-section{
    padding-bottom: 72px;
  }


  .message-list-section .search-flex{
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
  }

  .message-list-section .search-flex p{
    font-size: 14px;
    padding-top: 3px;
  }

  .message-list-section .search-flex .p1{
    color:#685a4b;
    /* margin-right: 16px; */
    margin-right: 0;
    order:0;
    margin-bottom: 16px;
  }

  .message-list-section .search-flex .p2{
    color:#626473;
    margin:0 8px;
    order:0;
    margin-bottom: 16px;
  }

  .message-list-section .search-flex .p3{
    color:#685a4b;
    margin-left: 0;
    margin-right: 0;
    order:1;
  }

  .message-list-section .search-flex .date-frame{
    width:126px;
    height:40px;
    position: relative;
    order:0;
    margin-bottom: 16px;
  }

  .message-list-section .search-flex .date-text{
    width:100%;
    height:100%;
    background-color: #fff;
    border:2px solid #424242;
    padding-left: 10px;
    font-size: 14px;
    color:#685a4b;
    line-height:1;
    /* padding-top: 4px; */
    display:flex;
    align-items: center;
  }

  .message-list-section .search-flex .date-frame2{
    /* margin-right: 56px; */
    margin-right: 0;
    margin-bottom: 16px;
  }

  .message-list-section .search-flex .date-input{
    display: block;
    width:100%;
    height:100%;
    position: absolute;
    top:0;
    left:0;
    z-index:4;
    text-indent: -9999em;
    opacity: 0;
  }

  .message-list-section .search-flex .date-input::-webkit-calendar-picker-indicator {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: auto;
    height: auto;
    background: transparent;
    z-index: 1;
  }

  .message-list-section .search-flex  .category-frame{
    width:116px;
    order:1;

  }

  .message-list-section .search-flex .text-input{

    width:225px;
    margin-right: 0;
    order:1;
  }

  .message-list-section .search-flex .search-button{
    margin-left: 40px;
    order:0;
    margin-bottom: 16px;
  }


  .message-list-section .head-flex{
    display: flex;

    padding-bottom: 6px;
    border-bottom: 1px solid #685a4b;
    margin-bottom: 12px;
    margin-top: 24px;
  }

  .message-list-section .head-flex p{
    color:#685a4b;
    font-size: 14px;
  }

  .message-list-section .date{
    width:160px;
    padding-left: 12px;
  }
  .message-list-section .num{
    width:70px;
    padding-right: 4px;
  }
  .message-list-section .kind{
    width:50px;
  }
  .message-list-section .nickname{
    width:95px;
    padding-right: 6px;
  }
  .message-list-section .category{
    width:70px;
  }
  .message-list-section .comment{
    width:100%;
  }

  .message-list-section .head-flex .comment{
    display: none;
  }

  .message-list-section .message-block{
    flex-wrap: wrap;
  }

  .message-list-section .message-block:last-child{
    margin-bottom: 0;
  }

  .message-list-section .message-popup{

  }

  .message-list-section .message-popup{

  }

  .message-list-section .message-popup.show{
    opacity: 1;
    pointer-events: auto;
  }

  .message-list-section .message-popup .frame{
    width:460px;
    overflow-y: scroll;
  }

  /*
  ------------------------------------------------------
  以下、チケットチャージ
  ------------------------------------------------------
  */

  body.ticket-body{

  }
  main.ticket-main{

  }

  .ticket-section{
    padding-bottom: 72px;
  }

  /*
  ------------------------------------------------------
  以下、チケット/コイン送付
  ------------------------------------------------------
  */

  body.present-body{

  }
  main.present-main{

  }

  .present-section{
    padding-bottom: 72px;
  }

  /*
  ------------------------------------------------------
  以下、チケット/コイン履歴
  ------------------------------------------------------
  */

  body.history-body{

  }
  main.history-main{

  }

  .history-section{
    padding-bottom: 72px;
  }


  .history-section .time{
    width:255px;
  }

  .history-section .from{
    display: none;
  }

  .history-section .amount{
    /* width:320px; */
    width:250px;
  }

  .history-section .status{
    /* width:110px; */
    width:140px;
  }

  .history-section .limit{
    /* width:65px; */
    width:105px;
    display: none;
  }

  .history-section .head-list{
    display:flex;
    margin-bottom: 28px;
    align-items: flex-end;
  }

  .history-section .head-list p{
    color:#685a4b;
    font-weight: bold;
    line-height:1.2;
  }

  .history-section .head-list p span{
    font-size: 12px;
    font-weight: normal;
  }

  .history-section .head-list .time{
    padding-left: 24px;
  }

  .history-section .history-list{
    padding:20px 0;
    margin-bottom: 32px;
    border-top:1px solid #665b4c;
    border-bottom:1px solid #665b4c;
  }

  .history-section .data-year{
    font-size: 18px;
    color:#685a4b;
    font-weight: bold;
    margin-left: 14px;
  }

  .history-section .history-block{
    display:flex;
    margin-bottom: 8px;
  }

  .history-section .history-block p{
    color:#685a4b;
  }

  .history-section .history-block .time{
    padding-left: 16px;
  }

  .history-section .history-block .from p{
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }


  .history-section .history-block .amount{
    display:flex;
  }

  .history-section .history-block .amount .change{
    text-align: right;
    width:70px;
  }

  .history-section .history-block .amount .slash{
    padding:0 8px;
  }

  .history-section .history-popup{
    position: fixed;
    width:100%;
    height:100vh;
    top:0;
    left:0;
    z-index:100;
    background-color: rgba(0,0,0,0.6);
    display: flex;
    justify-content: center;
    align-items: center;
    transition: 0.4s;
    opacity: 0;
    pointer-events: none;
  }

  .history-section .history-popup.show{
    opacity: 1;
    pointer-events: auto;
  }

  .history-section .history-popup .frame{
    max-height:70vh;
    width:460px;
    padding:32px 80px;
    background-color:#f7f1e8;
    overflow-y: scroll;
  }

  .history-section .history-popup .line{
    display: flex;
    margin-bottom: 12px;
    color:#685a4b;
  }

  .history-section .history-popup .line .left{
    width:110px;
    font-weight: bold;
    line-height:1.2;
  }
  .history-section .history-popup .line .left span{
    font-weight: normal;
    font-size: 12px;
  }

  .history-section .history-popup .line .right{
    width:calc(100% - 110px);
    line-height:1.2;
  }

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

  .mypage-icon-relative{
    width:100%;
    position: relative;
  }
  .mypage-icon-text{
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    color:rgba(0,0,0,0.6);
    font-weight: normal;
    font-size: 12px;
    text-align: center;
    line-height:1;
    white-space: nowrap;
    opacity: 0;
    pointer-events: none;
  }

  .mypage-icon-text.show{
    pointer-events: auto;
    opacity: 1;
  }

  .mypage-icon-text.top{
    top:-16px;
  }
  .mypage-icon-text.bottom{
    bottom:-14px;
  }


  .mypage-icon-text-switch{
    cursor: pointer;
    position: absolute;
    width:35px;
    aspect-ratio: 1 / 0.74;
    background-image: url('../img/common/myp-text-off.png');
    display: none;
    top:65px;
    right:0;
  }

  .mypage-icon-text-switch.show{
    background-image: url('../img/common/myp-text-on.png');
  }



  body.mypage-body{

  }

  body.mypage-body .mypage-icon-text-switch{
    display: block;
  }

  main.mypage-main{
    padding-top: 0;
  }

  .mypage-section1{
    padding-top: 20px;
    padding-bottom: 32px;
    position: relative;
  }

  .mypage-section1::before{
    content:"";
    width:100%;
    height:100%;
    background-color: #fff;
    z-index:-2;
    position: absolute;
    top:0;
    left:0;
  }

  .mypage-section1 .flex{
    display:flex;
    justify-content: space-between;
    flex-direction: column;
  }

  .mypage-section1 .flex .left{
    width:100%;
    margin-bottom: 24px;
  }

  .mypage-section1 .flex .right{
    width:100%;
    position: relative;
    /* padding-top: 48px */
  }

  .mypage-section1 .icon-list{
    display: flex;
    justify-content: space-around;
    margin-bottom: 24px;
    background-color: #f7f1e8;
    padding:8px 0;
  }

  .mypage-section1 .icon-list .block{
    display: block;
  }

  .mypage-section1 a.information-link{
    /* display: block;
    width:28px;
    margin:0;
    position: absolute;
    top:0;
    right:0; */
  }

  .mypage-section1 a.information-link img{
    width:100%;
  }


  .mypage-section2{
    padding:24px 0;
    background-color:#fff;
  }

  .mypage-section2 .container{
    padding:0;
  }

  .mypage-section2 .common-lesson-list .lesson-block{
    max-width:100%;
  }

  .mypage-section2 .flex{
    display: flex;
    justify-content: space-between;
    flex-direction: column;
  }

  .mypage-section2 .flex .left,
  .mypage-section2 .flex .right{
    width:100%;
  }

  .mypage-section2 .flex .left{
    margin-bottom: 24px;
  }

  .mypage-section3{
    padding-top: 40px;
  }
  .mypage-section3 .flex{
    display: flex;
    justify-content: space-between;
    /* margin-bottom: 48px; */
    flex-direction: column;
    margin-bottom: 40px;
  }

  .mypage-section3 .flex .left,
  .mypage-section3 .flex .right{
    width:100%;
  }

  .mypage-section3 .flex .left{
    margin-bottom: 16px;
  }


  #myp-footer{
    /* padding:40px 0 64px; */
  }

  .mypage-section3 .link-list{

    margin:0 auto 0;
  }

  .mypage-section3 .link-list .link{
    width:72px;
  }

  .mypage-section3 .link-list1{
    margin-bottom: 24px;
    padding-top: 0;
    justify-content:flex-end;
  }

  .mypage-section3 .link-list1 .link{
    margin-left: 40px;
  }

  .mypage-section3 .link-list2{
    justify-content:space-between;
  }

  /*
  ------------------------------------------------
  お知らせ一覧
  ------------------------------------------------
  */

  body.information-list-body{

  }

  main.information-list-main{

  }

  .information-list-section{
    padding-bottom: 72px;
  }

  /*
  ------------------------------------------------
  お知らせ一覧
  ------------------------------------------------
  */

  body.information-detail-body{

  }

  main.information-detail-main{

  }

  .information-detail-section{
    padding-bottom: 72px;
  }


  /*
  ------------------------------------------------
  オファーページ
  ------------------------------------------------
  */
  body.offer-body{

  }

  main.offer-main{

  }

  .offer-section1{
    padding-bottom: 40px;
  }

  .offer-section2{
    padding: 32px 0 40px;
    position: relative;
   }

   .offer-section2 .container{
     padding:0;
   }

  .offer-section3{
    padding-top: 32px;
    padding-bottom: 280px;
  }

  .offer-section3 .common-calendar .offer-modal{
    position: absolute;
    width:100%;
    top:calc(100% - 0px);

  }


  .offer-section3 .offer-set-list{
    max-width:480px;
    margin:24px auto 80px;
  }

  .offer-result-modal .frame{
    width:460px;
  }



  /*
  ------------------------------------------------
  講座一覧ページ
  ------------------------------------------------
  */


  body.lesson-list-body{

  }

  main.lesson-list-main{

  }

  .lesson-list-section1{
    padding-bottom: 48px;
  }

  .lesson-list-section2{
    padding:32px 0 72px;
    background-color:#fff;
  }

  .lesson-list-section2 .container{
    padding:0;
  }


  /*
  ------------------------------------------------
  オファー承諾
  ------------------------------------------------
  */

  body.concent-body{

  }

  main.concent-main{

  }

  .concent-section1{
    padding-bottom: 48px;
  }

  .concent-section2{
    background-color:#fff;
    padding:28px 0;
  }

  .concent-section2 .container{
    padding:0;
  }

  .concent-section3{
    padding:24px 0;

  }

  .concent-section3 .p1{
    text-align: center;
    color:#f25e41;
    font-size: 22px;
    font-weight: bold;
    line-height:1;
    margin-bottom: 24px;
  }

  .concent-section3 .flex{
    display: flex;
    justify-content: center;
  }



  .concent-section4{
    padding:32px 0 72px;
    background-color: #fff;
  }

  .concent-section4 .coin-calc-area{
    max-width:430px;
    margin:0 auto;
    font-size: 22px;
    line-height:1.4;
  }

  .concent-section4 .calc-line{
    display: flex;
    justify-content:space-between;
    margin-bottom: 16px;
  }

  .concent-section4 .calc-line.bold{
    font-weight: bold;
  }

  .concent-section4 .calc-line .left{
    position: relative;
    padding-left: 32px;

  }

  .concent-section4 .calc-line .left::before{
    content:"・";
    font-size: 22px;
    line-height:1.4;
    font-weight: normal;
    position: absolute;
    left:0;
    top:0;
    color:rgba(0,0,0,0.6);
  }

  .concent-section4 .border{
    height:1px;
    background-color:rgba(0,0,0,0.6);
    margin-bottom:16px;
  }

  .concent-section5{
    padding:48px 0 72px;
  }

  .concent-section5 .tool-area{
    max-width:920px;
    margin:24px auto 0;
  }

  .concent-section5 .tool-area .tool-text1{
    text-align:right;
    margin-top: 16px;
    /* margin-bottom: 24px; */
  }

  .concent-section5 .tool-area .tool-text1 p{
    font-size: 14px;
    color:#656565;
  }

  .concent-section5 .tool-area .tool-flex{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }

  .concent-section5 .tool-area .tool-block{
    width:100%;
    margin-bottom: 48px;
  }

  .concent-section5 .button-area{
    margin-top: 0;
  }

  .concent-section5 .button-area .refuse-modal-open {
    position: absolute;
    width: 35px;
    left: 0px;
    bottom: -6px;
    cursor: pointer;
}

  .concent-modal{

  }

  .concent-modal .frame{

    width:460px;

  }



  /*
  ------------------------------------------------
  コイン換金
  ------------------------------------------------
  */

  body.withdraw-body{

  }

  main.withdraw-main{

  }

  .withdraw-section{
    padding-bottom: 72px;
  }

  .withdraw-section .container{
    position: relative;
  }

  .withdraw-section .withdraw-button{
    font-size: 22px;
    width:285px;
    margin:48px 0 0;
  }

  .withdraw-section .withdraw-button.rock{
    opacity:0.6;
    pointer-events: none;
  }

  .withdraw-section .common-cancel-link{
    bottom:-10px;
    right:20px;
  }


  /*
  ------------------------------------------------
  完了報告ページ
  ------------------------------------------------
  */

  body.report-body{

  }
  main.report-main{

  }

  .report-section1{
    padding-bottom: 40px;
  }

  .report-section2{
    background-color: #fff;
    padding: 28px 0;
  }

  .report-section2 .container{
    padding:0;
  }

  .report-section2 .common-prof-box{
    margin-top: 24px;
  }

  .report-section3{
    padding:40px 0 72px;

  }

  .report-section3 .report-title{
    margin-left: -16px;
  }

  .report-section3 .rate-area{
    margin-bottom: 48px;
  }

  .report-section3 .rate-area .flex{
    display: flex;
    justify-content: center;
    align-items:center;
    flex-direction: column;
  }

  .report-section3 .rate-area .rate-set-frame{
    width:330px;
    position: relative;
  }



  .report-section3 .rate-area .show-rate{
    margin-left: 0;
    margin-top: 24px;
  }

  .report-section3 .situation-area {
    margin-bottom: 48px;

  }

  .report-section3 .situation-area .flex{
    display: flex;
    flex-direction: column;
  }

  .report-section3 .situation-area .flex .left,
  .report-section3 .situation-area .flex .right{
    width:100%;
  }

  .report-section3 .situation-area .flex .left{
    margin-bottom: 32px;
  }

  .report-section3 .situation-area .label-box{
    display: flex;
    justify-content: flex-start;

  }

  .report-section3 .comment-area{
    margin-bottom: 48px;
  }

  .report-section3 .comment-area .title-flex{
    display:flex;
    flex-direction: column;
    margin-bottom: 40px;
  }

  .report-section3 .comment-area .title-flex .report-title{
    margin-bottom: 0;
  }

  .report-section3 .comment-area .comment-text1{
    width:100%;
    padding-left:0;
    margin-top: 24px;
  }

  .report-section3 .comment-area .comment-text1 p{
    color:#685a4b;
    font-size: 14px;
    margin-bottom: 6px;
  }

  .report-section3 .comment-area textarea{
    display: block;
    width:100%;
    height:120px;
    border:1px solid #424242;
    background-color:#fff;
    padding:12px 24px;
    line-height:1.8;
    color:rgba(0,0,0,0.6);
  }

  .report-section3 .refund-area{
    margin-bottom: 48px;
  }

  .report-section3 .refund-area .flex{
    display: flex;
    justify-content: center;
    flex-direction: column;
  }

  .report-section3 .refund-area label{
    display: flex;
    margin:0;
    cursor: pointer;
    margin-bottom: 32px;
  }


  .report-modal{

  }

  .report-modal .frame{
    position: relative;
    width:460px;
    padding:40px 24px 40px;
    background-color:rgba(255,255,255,0.9);
  }

  .report-modal .p2{
    margin-bottom: 40px;
  }

  .report-modal .flex{
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items:center;
  }

  .report-modal .flex .left{
    display: flex;
    margin-bottom: 32px;
  }

  .report-modal .flex .right{
    margin-left: 0;
  }


  /*
  ------------------------------------------------------
  以下、静的ページ共通
  ------------------------------------------------------
  */
  body.static-body{

  }
  main.static-main{

  }

  main.static-main .sub-title{
    font-size: 18px;
    color:#82684e;
    font-weight: bold;
    text-align: center;
    margin-top: 16px;
  }
  /*
  ------------------------------------------------------
  以下、会社概要
  ------------------------------------------------------
  */

  body.company-body{

  }
  main.company-main{

  }

  .company-section1{
    padding-bottom: 72px;
  }

  .company-section1 .company-box{
    display: flex;
    justify-content: center;
    margin-top: 64px;
  }

  .company-section1 .info-line{
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
    margin-bottom: 40px;
  }

  .company-section1 .info-line{
    flex-direction: column;
  }

  .company-section1 .info-line .left,
  .company-section1 .info-line .right{
    width:100%;
  }

  .company-section1 .info-line .left{
    margin-bottom: 12px;
  }


  /*
  ------------------------------------------------------
  特定商取引方表示
  ------------------------------------------------------
  */

  body.commerce-body{

  }
  main.commerce-main{

  }

  .commerce-section1{
    padding-bottom: 72px;
  }

  .commerce-section1 .commerce-box{
    /* display: flex;
    justify-content: center;
    margin-top: 32px; */
  }

  .commerce-section1 .commerce-box p{
    line-height:1.8;
  }

  /*
  ------------------------------------------------------
  プライバシーポリシー
  ------------------------------------------------------
  */

  body.privacy-body{

  }
  main.privacy-main{

  }

  .privacy-section1{
    padding-bottom: 72px;
  }

  .privacy-section1 .privacy-box{
    /* display: flex;
    justify-content: center;
    margin-top: 64px; */
  }

  .privacy-section1 .privacy-box p{
    line-height:1.8;
  }

  /*
  ------------------------------------------------------
  ルール一覧
  ------------------------------------------------------
  */

  body.rule-body{

  }
  main.rule-main{

  }

  .rule-section1{
    padding-bottom: 72px;
  }

  .rule-section1 .rule-box{
    /* display: flex;
    justify-content: center;
    margin-top: 32px;
    margin-bottom: 40px; */
  }

  .rule-section1 .sp-height{
    height:50px;
    /* margin-bottom: 32px; */
  }

  .rule-section1 .rule-box p{
    line-height:1.8;
  }

  .rule-section1 .anchor1{
    left:0;
    top:-15px;
  }
  .rule-section1 .anchor2{
    left:0;
    top:15px;
  }
  .rule-section1 .anchor3{
    right:0;
    top:0;
  }
  .rule-section1 .anchor4{
    left:0;
    top:25px;
  }
  .rule-section1 .anchor5{
    left:0;
    top:55px;
  }
  .rule-section1 .anchor6{
    right:0;
    top:45px;
  }
  .rule-section1 .anchor7{
    left:0;
    top:-15px;
  }
  .rule-section1 .anchor8{
    left:0;
    top:15px;
  }

  /*
  ------------------------------------------------------
  FAQ
  ------------------------------------------------------
  */

  body.faq-body{

  }
  main.faq-main{

  }

  .faq-section1{
    padding-bottom: 72px;
  }

  .faq-section1 .faq-block .answer-area{
    padding-left: 80px;
    position: relative;
    display: none;
  }

  .faq-section1 .faq-block .answer-area::before{

    left:20px;
  }

  /*
  ------------------------------------------------------
  管理画面共通
  ------------------------------------------------------
  */

  #manage-header{
    background-color:#665b4c;
    padding-bottom: 10px;
  }

  #manage-header .header-flex{
    align-items: center;
  }

  #manage-header .header-left{
    align-items: center;
  }

  #manage-header .manage-title{
    font-size: 20px;
    color: #fff;
    font-weight: bold;
    line-height:1;
    margin-left: 32px;
  }

  #manage-header .logout-modal-open{
    width:42px;
    margin-top: 8px;
  }

  #manage-header .logout-modal-open img{
    width:100%;
  }


    /*
  ------------------------------------------------------
  掲示板一覧
  ------------------------------------------------------
  */

  body.community-list-body{

  }

  main.community-list-main{
    overflow: hidden;
  }

  .community-list-section1{
    padding-bottom: 80px;
  }

  .community-list-section1 .post-link{
    width:155px;
    height:35px;
    margin:32px auto 24px;
  }

  .community-list-section1 .post-link-frame{
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  
  
  .community-list-section1 .post-link-remark{
    position: static;
    white-space: nowrap;
    margin-bottom: 40px;
  }


  .community-list-section1 .communty-list-area{
    padding-top: 24px;
  }

  .community-list-section1 .search-flex{
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: column;
    padding:0;
    margin:0 auto 40px;
  }

  .community-list-section1 .search-flex label{
    font-size: 14px;
    margin-bottom: 4px;
    padding-left: 24px;
  }

  .community-list-section1 .search-flex .search-left{
    display: flex;
    align-items: center;
    flex-direction: column;
  }

  .community-list-section1 .search-flex .input-block + .input-block{
    margin-left: 0;
    margin-top: 16px;
  }


  .community-list-section1 .search-flex .select-frame::after{
    border-width: 8px 10px 0 10px;
    right:20px;

  }


  .community-list-section1 .search-flex select{
    width:325px;
    max-width: 100%;
    height:30px;
    padding-right:44px;
    padding-left: 24px;
    font-size: 14px;
  }

  .community-list-section1 .search-flex .community-keyword{
    padding:0 24px;
    width:325px;
    max-width: 100%;
    height:40px;
    font-size: 14px;

  }

  .community-list-section1 .search-flex .search-button{
    width:145px;
    height:32px;
    font-size: 16px;
    margin-bottom: 6px;
    margin-top: 28px;
  }

  .community-list-section1 .community-list{

  }

  .community-list-section1 .community-item{
    border-bottom:1px solid #665b4c;
  }
  
  .community-list-section1 .community-item + .community-item{
    border-top:none;
  }

  .community-list-section1 .community-card{
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: column-reverse;
    padding:16px 0;
  }



  .community-list-section1 .community-card .community-left{
    flex-shrink: 0;
    width:100%;
    padding-right: 0;
    padding-left: 30px;
    display: flex;
    align-items: flex-start;
    margin-top: 16px;
  }

  .community-list-section1 .community-card .community-right{
    width:100%;
  }

  .community-list-section1 .community-card .community-text{
    line-height: 1.8;
    font-weight: bold;
  } 

  .community-list-section1 .community-card .community-icon{
    flex-shrink: 0;
    width:26px;
    height:26px;
    margin-right: 16px;
  }


  .community-list-section1 .community-card .community-info{
    width:100%;
    display: flex;
    justify-content: flex-start;
    align-items: center;
  }

  .community-list-section1 .community-card .community-sender br{
    display: none;
  }

  .community-list-section1 .community-card .community-sender{
    margin-top: 0;
    width: 170px;
    margin-right: 10px;
  }

  .community-list-section1 .community-card .community-sender p{
    font-size: 24px;
  }

  .community-list-section1 .community-card .community-sender.teacher::before{
    width:28px;
    height:28px;
    margin-right: 16px;
  }

  .community-list-section1 .community-card .community-data{
    display: flex;
    align-items: center;
    flex-shrink: 0;
    margin-top: 0;

  }

  .community-list-section1 .community-card .community-day{
    width:auto;
    font-size: 14px;
    line-height: 1;
    order: 2;
  }

  .community-list-section1 .community-card .community-good{
    display: none;
  }


  .community-list-section1 .community-card .community-count{
    order: 1;
    min-width: 85px;
    padding-right: 8px;
  }

  .community-list-section1 .community-card .community-count::before{
    width:16px;
    height: 16px;
    margin-right: 10px;
  }



  .community-list-section1 .alert-text{
    margin-top: 72px;
    line-height: 1.5;
  }

  .community-list-section1 .alert-text a{
    margin:4px 8px 0;
  }

  /*
  ------------------------------------------------------
  掲示板詳細
  ------------------------------------------------------
  */

  body.community-body{

  }

  main.community-main{

  }

  .community-section1{
    padding-bottom: 80px;
  }

  .community-section1 .text-copy{

    width:14px;
    height:15px;
  }

  .community-section1 .report{
    width:20px;
  }

  .community-section1 .community-area{
    padding-top: 24px;
    margin-top: 32px;
  }

  .community-section1 .community-card{
    min-height: auto;
  }

  .community-section1 .community-card .text-copy{
    top:8px;
    left:auto;
    right:3px;

  }
  .community-section1 .community-card .report{
    top:36px;
    left:auto;
    right:0;
  }

  .community-section1 .community-card .community-delete-area{
    top:44px;
    left:auto;
    right:-3px;
  }

  
  .community-section1 .community-card .community-left{
    flex-shrink: 0;
    display: flex;
    align-items: flex-start;
    padding-right: 32px;
  }

  .community-section1 .community-card .community-right{
    width:100%;
    margin-top: 32px;
    padding-left: 0;
  }

  .community-section1 .community-card .community-tag-frame{
    display: flex;
    justify-content: flex-end;
    margin-top: 24px;
  }

  .community-section1 .community-card .community-tag-frame ul{
    gap:16px 32px;
  }

  .community-section1 .community-card .community-tag-frame li{
    padding:6px 16px;
    font-size: 14px;
  }


  .community-section1 .community-card .community-icon{
    flex-shrink: 0;
    width:68px;
    height:68px;
    margin-right: 16px;
  }

  .community-section1 .community-card .community-sender{
    margin-top: 4px;
  }

  .community-section1 .community-card .community-sender p{
    font-size: 24px;
  }

  .community-section1 .community-card .community-sender.teacher::before{
    width:28px;
    height:28px;
    margin-right: 16px;
  }

  .community-section1 .community-card .community-data{
    display: flex;
    align-items: center;
    margin-top: 12px;
  }

  .community-section1 .community-card .community-day{
    width:105px;
    font-size: 14px;
    line-height: 1;

  }

  .community-section1 .community-card .community-good{
    min-width:80px;
    padding-right: 6px;
  }

  .community-section1 .community-card .community-good::before{
    width:29px;
    height: 27px;
    margin-right: 4px;
  }

  .community-section1 .community-card .community-count{

  }

  .community-section1 .community-card .community-count::before{

    
    width:16px;
    height: 16px;
    margin-right: 10px;
  }

  .community-section1 .comment-list{
    margin-top: 36px;
    padding-left: 0;
  }

  .community-section1 .comment-item{
    padding:24px 0;
  }

  .community-section1 .comment-card{
    padding-left: 0;
    min-height: auto;
  }

  .community-section1 .comment-card .text-copy{
    top:8px;
    right:auto;
    left:3px;
  }
  .community-section1 .comment-card .report{
    top:36px;
    right:auto;
    left:0;
  }

  .community-section1 .comment-card .community-delete-area{
    top:40px;
    left:-2px;
    right:auto;
  }

  .community-section1 .comment-card .comment-left{
    display: flex;
    justify-content: flex-end;
    padding-left: 32px;
    padding-right: 0;
  }

  .community-section1 .comment-card .comment-icon{
    flex-shrink: 0;
    width:68px;
    height:68px;
    margin-left: 16px;
    margin-right: 0;
    position: static;
    order: 2;
  }

  .community-section1 .comment-card .comment-info{
    order: 0;
    padding-top: 4px;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
  }

  .community-section1 .comment-card .comment-sender{
    display: flex;
    justify-content: flex-end;
    margin-top: 4px;
    max-width: 100%;
  }

  .community-section1 .comment-card .comment-sender p{
    width:100%;
    font-size: 24px;
  }

  .community-section1 .comment-card .comment-sender.teacher::before{
    width:28px;
    height:28px;
    margin-right: 16px;
  }

  .community-section1 .comment-card .comment-day{
    font-size: 14px;
    position: static;
    margin-top: 12px;
    text-align: right;
  }

  .community-section1 .comment-card .comment-right{
    margin-top: 24px;
  }

  .community-section1 .comment-card .comment-text{

  }

  .community-section1 .comment-card .comment-text{
    color:rgba(0,0,0,0.6);
    line-height: 1.8;
  } 

  .community-section1 .comment-link-frame{
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  
  
  .community-section1 .comment-link-remark{
    position: static;
    margin-top: 24px;
    white-space: nowrap;
  }

  .community-section1 .comment-link{

    width:155px;
    height:32px;
    margin:32px auto 0;
  }

  /*
  ------------------------------------------------------
  掲示板投稿
  ------------------------------------------------------
  */

  body.comment-post-body{

  }

  main.comment-post-main{

  }

  .comment-post-section1{
    padding-bottom: 80px;
  }


  .comment-post-section1 .input-area{
    padding-top: 40px;
  }

  .comment-post-section1 label{
    font-size: 20px;
    margin-bottom: 10px;
    padding-left: 6px;
  }

  .comment-post-section1 label.must::before{
    font-size: 18px;
    right: -16px;
    top: -4px;
  }

  .comment-post-section1 label span{
    font-size: 16px;
    margin-left: 12px;
  }

  .comment-post-section1 .flex{
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    flex-direction: column;
  }

  .comment-post-section1 .flex .input-block{
    width:100%;
  }

  .comment-post-section1 .flex .input-block + .input-block{
    margin-top: 32px;
  }

  .comment-post-section1 .select-frame::after{
    border-width: 8px 10px 0 10px;
    right:20px;
  
  }

  .comment-post-section1 select{
    width:100%;
    height:40px;
    padding-right:48px;
    padding-left: 24px;
    font-size: 14px;
  }

  .comment-post-section1 .input-block input{
    width:100%;
    height:40px;
    padding-right:24px;
    padding-left: 24px;
    font-size: 14px;
  }

  .comment-post-section1 .tag-flex{
    margin-top: 32px;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
  }

  .comment-post-section1 .tag-flex .input-block{
    width:100%;
  }

  .comment-post-section1 .tag-flex .tag-add{
    width:80px;
    height:28px;
    
    margin-left: 0;
    margin-top: 24px;
    margin-bottom: 0;
  }

  .comment-post-section1 .tag-list{
    gap:16px 32px;
    margin-top: 24px;
  }

  .comment-post-section1 .tag-list li{
    padding:6px 16px;
    opacity: 0.5;
    font-size: 14px;
    line-height: 1.3;
  }

  .comment-post-section1 .text-block{
    margin-top: 40px;
  }


  .comment-post-section1 .text-block textarea{
    width:100%;
    height:230px;
    padding:16px;
  }

  .comment-post-section1 .submit-area{
    margin-top: 60px;
  }

  .comment-post-section1 .submit-area .common-cancel-link {
    top:0px;
    right:0;
}

  .comment-post-section1 .send-button{
    width:205px;
    height:40px;
    font-size: 22px;
  }


  /*確認画面*/

  .comment-post-section1 .comment-card{
    margin-top: 36px;
    padding-top: 24px;
    border-top:1px solid #665b4c;
  }


  .comment-post-section1 .comment-card .comment-left{
    display: flex;
    align-items: flex-start;
  }

  .comment-post-section1 .comment-card .comment-icon{
    flex-shrink: 0;
    width:68px;
    height:68px;
    margin-right: 16px;
  }


  .comment-post-section1 .comment-card .comment-sender{
    display: flex;
    align-items: flex-start;
    margin-top: 4px;
  }

  .comment-post-section1 .comment-card .comment-sender p{
    width:100%;
    font-size: 24px;
    line-height:1.3;
  }

  .comment-post-section1 .comment-card .comment-sender.teacher::before{
    width:28px;
    height:28px;
    margin-right: 16px;
  }

  .comment-post-section1 .comment-card .comment-right{
    padding-left: 20px;
    margin-top: 28px;
  }

  .comment-post-section1 .comment-card .comment-text{
    color:rgba(0,0,0,0.6);
    line-height: 1.8;
  }

  .comment-post-section1 .comment-card .tag-list-frame{
    display: flex;
    justify-content: flex-start;
    margin-top: 48px;
  }

  .comment-post-section1 .comment-card .tag-list li{
    padding-right: 16px;
  }

  .comment-post-section1 .submit-area-confirm{
    flex-direction: column;
    align-items: center;
  }

  .comment-post-section1 .back-button{
    width:150px;
    height:40px;
    border-radius: 20px;
    font-size: 22px;
    margin-top: 56px;
    position: static;
  }

}/*@media(max-width:960px){*/
