*{
  margin:0;
  padding:0;
  list-style: none;
  box-sizing: border-box;
  text-decoration: none;
  background-size: cover;
  background-position: center;
  /* word-break: break-word; */
}

html {
  -ms-text-size-adjust: none;
  -webkit-text-size-adjust: none;
}


*::before,
*::after{
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

body{
  font-size: 16px;
  font-family:'メイリオ', 'Meiryo', sans-serif;
  position: relative;
  color:rgba(0,0,0,0.6);
  -webkit-font-smoothing: antialiased;
  -ms-text-size-adjust: none;
  -webkit-text-size-adjust: none;
}


body::before{
  content:'';
  width:100%;
  min-height:100vh;
  height:100%;
  background-color: #f7f1e8;
  position: absolute;
  top:0;
  left:0;
  z-index:-50;
}

input,
select,
textarea{
  font-family:'メイリオ', 'Meiryo', sans-serif;
  -webkit-font-smoothing: antialiased;
  -ms-text-size-adjust: none;
  -webkit-text-size-adjust: none;
  font-feature-settings: 'palt';
  touch-action: manipulation;
  resize: none;
  display: block;
}

img{
  display: block;
  object-position: center;
}

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


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

.hide{
  display: none!important;
}

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

.anchor-link{
  cursor:pointer;
}

.common-hover-opa{
  transition:0.4s;
}

.common-hover-opa:hover{
  opacity:0.7;
}

.loading-button{
  position: relative;
}

.click-rock{
  pointer-events: none!important;
  box-shadow:none!important;
  transform: translateY(3px);
  opacity: 0.5;
}

.loader-frame{
  position: absolute;
  right:-20px;
  top:-20px;
  opacity:0;
}

.click-rock .loader-frame{
  opacity:1;
}

.loader {
  margin: auto;
  font-size: 6px;
  width:8px;
  height:8px;
  border-radius: 50%;
  position: relative;
  text-indent: -9999em;
  -webkit-animation: load5 1.1s infinite ease;
  animation: load5 1.1s infinite ease;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
  pointer-events: none;
}
@-webkit-keyframes load5 {
  0%,
  100% {
    box-shadow: 0em -2.6em 0em 0em #000000, 1.8em -1.8em 0 0em rgba(0,0,0, 0.2), 2.5em 0em 0 0em rgba(0,0,0, 0.2), 1.75em 1.75em 0 0em rgba(0,0,0, 0.2), 0em 2.5em 0 0em rgba(0,0,0, 0.2), -1.8em 1.8em 0 0em rgba(0,0,0, 0.2), -2.6em 0em 0 0em rgba(0,0,0, 0.5), -1.8em -1.8em 0 0em rgba(0,0,0, 0.7);
  }
  12.5% {
    box-shadow: 0em -2.6em 0em 0em rgba(0,0,0, 0.7), 1.8em -1.8em 0 0em #000000, 2.5em 0em 0 0em rgba(0,0,0, 0.2), 1.75em 1.75em 0 0em rgba(0,0,0, 0.2), 0em 2.5em 0 0em rgba(0,0,0, 0.2), -1.8em 1.8em 0 0em rgba(0,0,0, 0.2), -2.6em 0em 0 0em rgba(0,0,0, 0.2), -1.8em -1.8em 0 0em rgba(0,0,0, 0.5);
  }
  25% {
    box-shadow: 0em -2.6em 0em 0em rgba(0,0,0, 0.5), 1.8em -1.8em 0 0em rgba(0,0,0, 0.7), 2.5em 0em 0 0em #000000, 1.75em 1.75em 0 0em rgba(0,0,0, 0.2), 0em 2.5em 0 0em rgba(0,0,0, 0.2), -1.8em 1.8em 0 0em rgba(0,0,0, 0.2), -2.6em 0em 0 0em rgba(0,0,0, 0.2), -1.8em -1.8em 0 0em rgba(0,0,0, 0.2);
  }
  37.5% {
    box-shadow: 0em -2.6em 0em 0em rgba(0,0,0, 0.2), 1.8em -1.8em 0 0em rgba(0,0,0, 0.5), 2.5em 0em 0 0em rgba(0,0,0, 0.7), 1.75em 1.75em 0 0em #000000, 0em 2.5em 0 0em rgba(0,0,0, 0.2), -1.8em 1.8em 0 0em rgba(0,0,0, 0.2), -2.6em 0em 0 0em rgba(0,0,0, 0.2), -1.8em -1.8em 0 0em rgba(0,0,0, 0.2);
  }
  50% {
    box-shadow: 0em -2.6em 0em 0em rgba(0,0,0, 0.2), 1.8em -1.8em 0 0em rgba(0,0,0, 0.2), 2.5em 0em 0 0em rgba(0,0,0, 0.5), 1.75em 1.75em 0 0em rgba(0,0,0, 0.7), 0em 2.5em 0 0em #000000, -1.8em 1.8em 0 0em rgba(0,0,0, 0.2), -2.6em 0em 0 0em rgba(0,0,0, 0.2), -1.8em -1.8em 0 0em rgba(0,0,0, 0.2);
  }
  62.5% {
    box-shadow: 0em -2.6em 0em 0em rgba(0,0,0, 0.2), 1.8em -1.8em 0 0em rgba(0,0,0, 0.2), 2.5em 0em 0 0em rgba(0,0,0, 0.2), 1.75em 1.75em 0 0em rgba(0,0,0, 0.5), 0em 2.5em 0 0em rgba(0,0,0, 0.7), -1.8em 1.8em 0 0em #000000, -2.6em 0em 0 0em rgba(0,0,0, 0.2), -1.8em -1.8em 0 0em rgba(0,0,0, 0.2);
  }
  75% {
    box-shadow: 0em -2.6em 0em 0em rgba(0,0,0, 0.2), 1.8em -1.8em 0 0em rgba(0,0,0, 0.2), 2.5em 0em 0 0em rgba(0,0,0, 0.2), 1.75em 1.75em 0 0em rgba(0,0,0, 0.2), 0em 2.5em 0 0em rgba(0,0,0, 0.5), -1.8em 1.8em 0 0em rgba(0,0,0, 0.7), -2.6em 0em 0 0em #000000, -1.8em -1.8em 0 0em rgba(0,0,0, 0.2);
  }
  87.5% {
    box-shadow: 0em -2.6em 0em 0em rgba(0,0,0, 0.2), 1.8em -1.8em 0 0em rgba(0,0,0, 0.2), 2.5em 0em 0 0em rgba(0,0,0, 0.2), 1.75em 1.75em 0 0em rgba(0,0,0, 0.2), 0em 2.5em 0 0em rgba(0,0,0, 0.2), -1.8em 1.8em 0 0em rgba(0,0,0, 0.5), -2.6em 0em 0 0em rgba(0,0,0, 0.7), -1.8em -1.8em 0 0em #000000;
  }
}
@keyframes load5 {
  0%,
  100% {
    box-shadow: 0em -2.6em 0em 0em #000000, 1.8em -1.8em 0 0em rgba(0,0,0, 0.2), 2.5em 0em 0 0em rgba(0,0,0, 0.2), 1.75em 1.75em 0 0em rgba(0,0,0, 0.2), 0em 2.5em 0 0em rgba(0,0,0, 0.2), -1.8em 1.8em 0 0em rgba(0,0,0, 0.2), -2.6em 0em 0 0em rgba(0,0,0, 0.5), -1.8em -1.8em 0 0em rgba(0,0,0, 0.7);
  }
  12.5% {
    box-shadow: 0em -2.6em 0em 0em rgba(0,0,0, 0.7), 1.8em -1.8em 0 0em #000000, 2.5em 0em 0 0em rgba(0,0,0, 0.2), 1.75em 1.75em 0 0em rgba(0,0,0, 0.2), 0em 2.5em 0 0em rgba(0,0,0, 0.2), -1.8em 1.8em 0 0em rgba(0,0,0, 0.2), -2.6em 0em 0 0em rgba(0,0,0, 0.2), -1.8em -1.8em 0 0em rgba(0,0,0, 0.5);
  }
  25% {
    box-shadow: 0em -2.6em 0em 0em rgba(0,0,0, 0.5), 1.8em -1.8em 0 0em rgba(0,0,0, 0.7), 2.5em 0em 0 0em #000000, 1.75em 1.75em 0 0em rgba(0,0,0, 0.2), 0em 2.5em 0 0em rgba(0,0,0, 0.2), -1.8em 1.8em 0 0em rgba(0,0,0, 0.2), -2.6em 0em 0 0em rgba(0,0,0, 0.2), -1.8em -1.8em 0 0em rgba(0,0,0, 0.2);
  }
  37.5% {
    box-shadow: 0em -2.6em 0em 0em rgba(0,0,0, 0.2), 1.8em -1.8em 0 0em rgba(0,0,0, 0.5), 2.5em 0em 0 0em rgba(0,0,0, 0.7), 1.75em 1.75em 0 0em #000000, 0em 2.5em 0 0em rgba(0,0,0, 0.2), -1.8em 1.8em 0 0em rgba(0,0,0, 0.2), -2.6em 0em 0 0em rgba(0,0,0, 0.2), -1.8em -1.8em 0 0em rgba(0,0,0, 0.2);
  }
  50% {
    box-shadow: 0em -2.6em 0em 0em rgba(0,0,0, 0.2), 1.8em -1.8em 0 0em rgba(0,0,0, 0.2), 2.5em 0em 0 0em rgba(0,0,0, 0.5), 1.75em 1.75em 0 0em rgba(0,0,0, 0.7), 0em 2.5em 0 0em #000000, -1.8em 1.8em 0 0em rgba(0,0,0, 0.2), -2.6em 0em 0 0em rgba(0,0,0, 0.2), -1.8em -1.8em 0 0em rgba(0,0,0, 0.2);
  }
  62.5% {
    box-shadow: 0em -2.6em 0em 0em rgba(0,0,0, 0.2), 1.8em -1.8em 0 0em rgba(0,0,0, 0.2), 2.5em 0em 0 0em rgba(0,0,0, 0.2), 1.75em 1.75em 0 0em rgba(0,0,0, 0.5), 0em 2.5em 0 0em rgba(0,0,0, 0.7), -1.8em 1.8em 0 0em #000000, -2.6em 0em 0 0em rgba(0,0,0, 0.2), -1.8em -1.8em 0 0em rgba(0,0,0, 0.2);
  }
  75% {
    box-shadow: 0em -2.6em 0em 0em rgba(0,0,0, 0.2), 1.8em -1.8em 0 0em rgba(0,0,0, 0.2), 2.5em 0em 0 0em rgba(0,0,0, 0.2), 1.75em 1.75em 0 0em rgba(0,0,0, 0.2), 0em 2.5em 0 0em rgba(0,0,0, 0.5), -1.8em 1.8em 0 0em rgba(0,0,0, 0.7), -2.6em 0em 0 0em #000000, -1.8em -1.8em 0 0em rgba(0,0,0, 0.2);
  }
  87.5% {
    box-shadow: 0em -2.6em 0em 0em rgba(0,0,0, 0.2), 1.8em -1.8em 0 0em rgba(0,0,0, 0.2), 2.5em 0em 0 0em rgba(0,0,0, 0.2), 1.75em 1.75em 0 0em rgba(0,0,0, 0.2), 0em 2.5em 0 0em rgba(0,0,0, 0.2), -1.8em 1.8em 0 0em rgba(0,0,0, 0.5), -2.6em 0em 0 0em rgba(0,0,0, 0.7), -1.8em -1.8em 0 0em #000000;
  }
}


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

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

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


.common-title-flex::before{
  content:'';
  width:40px;
  height:27px;
  background-image: url('../img/common/title-icon.png');
  position: absolute;
  top: 50%;
  left: -72px;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}

.common-title-flex.gray{
  color:#697c85;
}

.common-title-flex.gray::before{
  background-image: url('../img/common/title-icon2.png');
}

.common-title-flex .en{
  line-height:1;
}

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

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

.common-title-flex .en.fz24{
  font-size: 24px;
  font-weight: bold;
}

.common-title-flex .ja{
  margin-left: 56px;
  line-height:1;
}


.common-orange-button{
  border:none!important;
  background:none!important;
  width:205px;
  height:40px;
  border-radius: 40px;
  background-color:#f0a473!important;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 22px;
  font-weight: bold;
  line-height:1;
  color:#fff;
  box-shadow: 3px 3px 3px rgba(0,0,0,0.35);
  cursor: pointer;
}

.common-cancel-link{
  position: absolute;
  right:52px;
  width:37px;
}

.common-cancel-link img{
  width:100%;
}

.skype-icon{
  background-image: url('../img/common/skype-off.png');
}
.skype-icon.use{
  background-image: url('../img/common/skype-on.png');
}
.zoom-icon{
  background-image: url('../img/common/zoom-off.png');
}
.zoom-icon.use{
  background-image: url('../img/common/zoom-on.png');
}
.voov-icon{
  background-image: url('../img/common/voov-off.png');
}
.voov-icon.use{
  background-image: url('../img/common/voov-on.png');
}
.wechat-icon{
  background-image: url('../img/common/wechat-off.png');
}
.wechat-icon.use{
  background-image: url('../img/common/wechat-on.png');
}


.talk-icon{
  background-image: url('../img/lesson/features-talk-off.png');
}
.talk-icon.use{
  background-image: url('../img/lesson/features-talk-on.png');
}
.grammar-icon{
  background-image: url('../img/lesson/features-grammar-off.png');
}
.grammar-icon.use{
  background-image: url('../img/lesson/features-grammar-on.png');
}
.write-icon{
  background-image: url('../img/lesson/features-write-off.png');
}
.write-icon.use{
  background-image: url('../img/lesson/features-write-on.png');
}
.reading-icon{
  background-image: url('../img/lesson/features-reading-off.png');
}
.reading-icon.use{
  background-image: url('../img/lesson/features-reading-on.png');
}
.ristning-icon{
  background-image: url('../img/lesson/features-ristning-off.png');
}
.ristning-icon.use{
  background-image: url('../img/lesson/features-ristning-on.png');
}


.lesson-category-icon-フリートーク{
  background-image: url('../img/lesson/free.png');
}
.lesson-category-icon-子供向け{
  background-image: url('../img/lesson/kids.png');
}
.lesson-category-icon-ビジネス{
  background-image: url('../img/lesson/business.png');
}
.lesson-category-icon-JLPT{
  background-image: url('../img/lesson/jlpt.png');
}
.lesson-category-icon-BJT{
  background-image: url('../img/lesson/bjt.png');
}
.lesson-category-icon-旅行{
  background-image: url('../img/lesson/travel.png');
}
.lesson-category-icon-シーン別{
  background-image: url('../img/lesson/scene.png');
}
.lesson-category-icon-その他{
  background-image: url('../img/lesson/other.png');
}

.textarea-count,
.editor-count{
  text-align: right;
  font-size: 14px;
  height:21px;
  line-height: 1;
  color:#685a4b;
  margin-top: 8px;
}

.editor-frame textarea{
  /* display: block!important; */
}

p{
  margin:0;
}

.max-count-err{
  color:#ff0000;
  font-size: 14px;
  display: flex;
  justify-content: flex-end;
}

.max-count-err-rock{
  pointer-events: none;
  opacity: 0.6;
}



header{
  padding-top: 20px;
}

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 .menu-block{
  width:34px;
  cursor:pointer;
}

header .header-left .menu-block img{
  width:100%;
}

header .header-left .header-logo{
  width:235px;
  margin-left: 32px;
  margin-right: 88px;
}

header .header-left .header-logo img {
  width:100%;
}

header .nav-flex{
  display:flex;
  align-items:center;
}

header .nav-flex img{
  width:100%;
}

header .nav-flex .login{
  width:31px;
  margin-left: 40px;
}

header .nav-flex .logout-modal-open{
  cursor:pointer;
  width:43px;
}

header .nav-flex .signup{
  width:40px;
  margin-left: 36px;
}

header .mypage{
  margin-left: 36px;
}
header .mypage img{
  width:32px;
  margin:0 auto;
}

header .mypage p{
  font-size: 10px;
  font-weight: bold;
  line-height:1;
  color:#94866f;
  margin-top: 3px;
  text-align: center;
}

header .community{
  width:52px;
  margin-left: 36px;
}

header .community img{
  width:100%;
}

header .nav-flex .contact{
  width:43px;
  margin-left: 36px;
}

header .header-right{
  width:205px;
}

header .time-zone-block{
  width:205px;
  height:32px;
  border-radius:16px;
  position: relative;
  display: flex;
  align-items: center;
  padding-left: 16px;
  background-color:#94866f;
  cursor:pointer;
}

header .time-zone-block::after{
  content:'';
  width:17px;
  height:17.5px;
  background-image:url('../img/common/house-icon.png');
  position: absolute;
  top:6px;
  right:16px;

}

header .time-zone-block p{
  color:#ffffff;
  font-size: 14px;
  font-weight: bold;
  line-height:1;
}


#drawer-menu{
  position: fixed;
  left:-375px;
  top:0;
  width:375px;
  height:100vh;
  transition-duration: 0.5s;
  background-color:#fff;
  padding:20px 32px 40px;
  z-index:50;
  overflow-y: scroll;
}

#drawer-menu.show{
  left:0;
}

#drawer-menu .logo{
  width:230px;
  /* height:32px; */
  margin-bottom: 24px;
  display: block;
}

#drawer-menu .logo img{
  width:100%;
}

#drawer-menu .frame{
  position: relative;
}

#drawer-menu .drawer-close{
  position: absolute;
  width:36px;
  border-radius:50%;
  cursor: pointer;
  top:0;
  right:0;
}

#drawer-menu ul{
  margin-bottom: 24px;
}

#drawer-menu ul li{
  margin-bottom: 24px;
}

#drawer-menu ul li:last-child{
  margin-bottom: 0;
}

#drawer-menu ul li p{
  color:#94866f;
  font-size: 20px;
  font-weight: bold;
  line-height:1;
}

#drawer-menu ul li p.ja{
  margin-bottom: 6px;
}

#drawer-menu .log{
  color:#94866f;
  font-size: 20px;
  font-weight: bold;
  line-height:1;
  display:inline-block;
  cursor: pointer;
}


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

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

footer nav{
  display: flex;
  /* margin-top: 100px; */
  transform: translateY(32px);
}

footer nav a{
  color:#685a4b;
  line-height:1.2;
  font-weight: normal;
  margin-right:48px;
}

footer nav a p{
  white-space: nowrap;
  text-align: center;
}

footer nav a p.en{
  margin-top: 6px;
  font-size: 10px;
}

footer nav a:last-child {
  margin-right:0;
}


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:16px;
  /* bottom:0;
  margin:auto; */
}

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


footer .footer-logo{
  position: relative;
}

footer .footer-logo a{
  display: block;
  width:145px;
  /* 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: 48px;
}

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

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

#myp-footer .myp-footer-link{

}

#myp-footer .myp-footer-link.off-link{
  opacity: 0.3;
  pointer-events: none;
}

#myp-footer .myp-footer-link p{
  text-align: center;
  color:#a19284;
}

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

#myp-footer .myp-footer-link .footer-icon1{
  width:75px;
}
#myp-footer .myp-footer-link .footer-icon2{
  width:65px;
}
#myp-footer .myp-footer-link .footer-icon3{
  width:80px;
}
#myp-footer .myp-footer-link .footer-icon4{
  width:56px;
}
#myp-footer .myp-footer-link .footer-icon5{
  width:72px;
}


.timezone-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;
  color:#697c85;
}

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

.timezone-modal .frame{
  width:480px;
  /* height:570px; */
  background-color:#fff;
  padding:40px 16px;
  position: relative;
}

.timezone-modal .common-title-flex{
  margin-bottom: 40px;
  margin-left: 20px;
}

.timezone-modal .common-title-flex .en{
  font-size: 28px;
  font-weight: normal;
}

.timezone-modal .block{
  display: flex;

}

.timezone-modal .block .left{
  font-size: 28px;
  width:135px;
  line-height:1.3;
}


.timezone-modal .block .left.bold{
  font-weight: bold;
}

.timezone-modal .block .right{
  width:calc(100% - 135px);
}

.timezone-modal .block .right .p1{
  font-size: 28px;
  line-height:1.3;
}

.timezone-modal .block .right .p2{
  font-size: 28px;
  line-height:1.3;
  font-weight: bold;
  color:#f0a473;
}

.timezone-modal .arrow{
  font-size: 28px;
  font-weight: bold;
  text-align: center;
  margin:16px 0;
  padding-left: 20px;
}

.timezone-modal .select-frame{
  position: relative;
  margin-bottom: 12px;
  margin-top: -4px;
}

.timezone-modal .select-frame::after{
  content:'';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8px 10px 0 10px;
  border-color: #656565 transparent transparent transparent;
  position: absolute;
  top:0;
  bottom:0;
  right:24px;
  margin:auto;
  pointer-events: none;
}

.timezone-modal .select-frame select{
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  border:none;
  background:none;
  display: block;
  width:100%;
  height:50px;
  background-color:#fff;
  padding:0 48px 0 20px;
  border:1px solid #424242;
  font-size: 28px;
  color:#697c85;
  cursor:pointer;
}

.timezone-modal .time-set-frame{
  min-height:75px;
}

.timezone-modal .common-orange-button{
  width:135px;
  margin:36px auto 0;
}

.timezone-modal .timezone-modal-close{
  cursor:pointer;
  right:24px;
  bottom:24px;
}


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

.wp-pagenavi span.current{/*現在のページボタン*/
  color: rgba(0,0,0,0.6);
  font-weight: normal;
  font-size: 14px;
  border-bottom:1px solid rgba(0,0,0,0.6);
  padding:0 4px 0;
  margin:0 12px;
}

.wp-pagenavi .page-numbers{/*指定のページ移動ボタン*/
  color: rgba(0,0,0,0.6);
  font-weight: normal;
  font-size: 14px;
  padding:0 4px 0;
  margin:0 12px;
  cursor: pointer;
}

.wp-pagenavi .myp-page-numbers.current{/*マイページ限定*/
  pointer-events: none;
}
.wp-pagenavi .myp-page-numbers.current.next,
.wp-pagenavi .myp-page-numbers.current.prev{/*マイページ限定*/
  pointer-events: auto;
  border-bottom:none;
}

.wp-pagenavi .page-numbers.next,
.wp-pagenavi .page-numbers.prev{/*next prevボタン*/

}

.wp-pagenavi .page-numbers:hover{
  border-bottom:1px solid rgba(0,0,0,0.6);
}

.wp-pagenavi .page-numbers.next:hover,
.wp-pagenavi .page-numbers.prev:hover{
  border-bottom:none;
}
/*ページネーション*/



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

.common-lesson-list .lesson-block{
  margin-bottom: 36px;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}

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


.common-lesson-list .lesson-block .lesson-left{
  width:460px;
  margin-right: 40px;
  position: relative;
}


.common-lesson-list .lesson-block .report-wait::before {
  content: "";
  width: 100%;
  height: 100%;
  background-color: rgba(255,255,255,0.7);
  position: absolute;
  z-index: 3;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}

.common-lesson-list .lesson-block .lesson-right{
  width:440px;
  color:rgba(0,0,0,0.6);
}

.common-lesson-list .lesson-block .lesson-right .retire-text{
  font-size: 26px;
  font-weight:bold;
  line-height:1;
  color:#e04933;
  margin-bottom: 12px;
}

.common-lesson-list .lesson-block .offer-button{
  position: absolute;
  right:0;
  bottom:8px;
  width:115px;
  height:24px;
  border-radius: 12px;
  background-color:#f0a473;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 14px;
  font-weight: bold;
  line-height:1;
  color:#fff;
  box-shadow: 2px 2px 2px rgba(0,0,0,0.20);
}

.common-lesson-list .lesson-block .time-plan{
  font-size: 26px;
  font-weight: bold;
  line-height:1;
  white-space: nowrap;
  margin-bottom: 20px;
}
.common-lesson-list .lesson-block .time-plan span{
  font-size: 20px;
}

.common-lesson-list .lesson-block .line1{
  display: flex;
  margin-bottom: 8px;
  padding-left: 10px;
}

.common-lesson-list .lesson-block .line1 .lesson-language-icon{
  width:36px;
  height:36px;
  border-radius: 50%;
  position: relative;
  box-shadow: 1px 1px 1px rgba(0,0,0,0.35);
}

.common-lesson-list .lesson-block .line1 .lesson-language-icon img{
  width:100%;
  height:100%;
  border-radius: 50%;
  object-fit: cover;
}

.common-lesson-list .lesson-block .line1 .target-icon{
  position: absolute;
  width:20px;
  height:20px;
  border-radius: 50%;
  display:flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  font-weight: bold;
  line-height:1;
  letter-spacing:0;
  color:#666666;
  box-shadow: 1px 1px 1px rgba(0,0,0,0.35);

  padding-top: 2px;
}

.common-lesson-list .lesson-block .line1 .target-icon-a{
  background-color:#dcf2d3;
  top:-6px;
  left:-12px;
}
.common-lesson-list .lesson-block .line1 .target-icon-b{
  background-color:#e4d4ff;
  top:-18px;
  left:0;
  right:0;
  margin:auto;
}
.common-lesson-list .lesson-block .line1 .target-icon-c{
  background-color:#d5e6f2;
  top:-6px;
  right:-12px;
}
.common-lesson-list .lesson-block .line1 .target-icon-d{
  background-color:#f1fada;
  bottom:-6px;
  right:-12px;
}
.common-lesson-list .lesson-block .line1 .target-icon-e{
  background-color:#f0a473;
  color:#fff;
  bottom:-6px;
  left:-12px;
}

.common-lesson-list .lesson-block .line1 .lesson-title{
  width:315px;
  padding-left: 28px;
  padding-right: 16px;
  color:#666666;
  font-size: 20px;
  font-weight: bold;
  line-height:1.8;
  padding-top: 4px;
}

.common-lesson-list .lesson-block .line1 a.lesson-title{
  display: block;
  text-decoration: underline;
}

.common-lesson-list .lesson-block .line1 a.lesson-title:hover{
  text-decoration: none;
}

.common-lesson-list .lesson-block .line1 .lesson-price{
  text-align: right;
  color:#666666;
  font-weight: bold;
  font-size: 20px;
}

.common-lesson-list .lesson-block .line1 .lesson-time{
  text-align: right;
  color:#666666;
  font-weight: bold;
  font-size: 14px;
}

.common-lesson-list .lesson-block .line2{
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 8px;
}

.common-lesson-list .lesson-block .line2 .interview-icon{
  width:52px;
}

.common-lesson-list .lesson-block .line2 .interview-icon img{
  width:100%;
}

.common-lesson-list .lesson-block .line2 .lesson-category-icon{
  width:50px;
  height:50px;
}

.common-lesson-list .lesson-block .line2 .ul-flex{
  display: flex;
  align-items: center;
}

.common-lesson-list .lesson-block .line2  ul.features-list{
  display: flex;
}

.common-lesson-list .lesson-block .line2  ul.features-list li{
  width:32px;
  height:32px;
  border-radius: 50%;
  margin-left: 10px;
}


.common-lesson-list .lesson-block .line2  ul.features-list{
  display: flex;
}

.common-lesson-list .lesson-block .line2  ul.features-list li{
  width:32px;
  height:32px;
  border-radius: 50%;
  margin-left: 10px;
}

.common-lesson-list .lesson-block .line2  .tool-list{
  display: flex;
  align-items: center;
  margin-left: 12px;
}

.common-lesson-list .lesson-block .line2  .tool-list li{
  width:38px;
  height:38px;
  margin-left: 6px;
}

.common-lesson-list .lesson-block .line2  .tool-list li.wechat-icon{
  width:38px;
  height:32px;
  margin-left: 6px;
}

.common-lesson-list .lesson-block .line2  .tool-list li a{
  pointer-events: none;
}

.common-lesson-list .lesson-block .line2  .tool-list .use a{
  display: block;
  width:100%;
  height:100%;
  pointer-events: auto;
}

.common-lesson-list .lesson-block .prof-box{
  display: flex;
  align-items: center;
  width:300px;
  height:72px;
  border-top-right-radius: 36px;
  border-bottom-right-radius: 36px;
  background-color:#e6ded1;
  box-shadow:2px 2px 2px rgba(0,0,0,0.2);
  padding-left: 8px;
  padding-right: 32px;
  position: relative;
}

.common-lesson-list .lesson-block .retire{
  pointer-events: none!important;
  text-decoration: none!important;
}

.common-lesson-list .lesson-block .prof-box.retire{
  background-color:transparent!important;
  border:5px solid #808080!important;
  pointer-events: none!important;
}


.common-lesson-list .lesson-block .prof-box.student{
  background-color: #f1fada;
}

.common-lesson-list .lesson-block .prof-box.manager{
  background-color: #f0a473;
}

.common-lesson-list .lesson-block .prof-box .teacher-country{
  position: absolute;
  width:22px;
  right: 24px;
  bottom: 12px;
}

.common-lesson-list .lesson-block .prof-box .country-icon-frame{
  width:100%;
  aspect-ratio: 1 / 1;
  /* height:100%; */
  position: relative;
  overflow: hidden;
  box-shadow: 0.7px 0.7px 0.7px rgb(0 0 0 / 35%);
}

.common-lesson-list .lesson-block .prof-box .country-icon-frame img{
  display:block;
  position: absolute;
  width:150%!important;
  height:150%!important;
  object-fit: cover;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}

.common-lesson-list .lesson-block .prof-box .thumb{
  width:44px;
  height:44px;
  border-radius: 50%;
  box-shadow:3px 3px 3px rgba(0,0,0,0.35);
}

.common-lesson-list .lesson-block .prof-box .thumb img{
  width:100%;
  height:100%;
  object-fit: cover;
  border-radius: 50%;
}

.common-lesson-list .lesson-block .prof{
  width:calc(100% - 44px);
  padding-left: 24px;

}

.common-lesson-list .lesson-block .teacher-name{
  font-weight: bold;
  color:#666666;
  line-height:1;
  margin-bottom: 6px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.common-lesson-list .lesson-block .manager .teacher-name{
  color:#fff;
}

.common-lesson-list .lesson-block .icon-flex{
  display: flex;
  align-items: center;
}

.common-lesson-list .lesson-block .performance-count{
  margin-right: 16px;
  padding-left: 24px;
  color:#99abb3;
  line-height:1;
  position: relative;
}

.common-lesson-list .lesson-block .performance-count::before{
  content:'';
  width:12px;
  height:21px;
  background-image: url('../img/common/human-icon.png');
  position: absolute;
  left:3px;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}

.common-lesson-list .lesson-block .evaluation{
  padding-left: 24px;
  color:#e69e35;
  font-weight: bold;
  line-height:1;
  position: relative;
  padding-top: 3px;
  display: inline-block;
}

.common-lesson-list .lesson-block .evaluation::before{
  content:'';
  width:20px;
  height:19px;
  background-image: url('../img/common/star.png');
  position: absolute;
  left:0;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}

.common-lesson-list .lesson-block .min-text{
  font-size: 14px;
  text-align: center;
}

.common-lesson-list .lesson-block .concent-area{
  width:calc(100% - 300px);
  position: absolute;
  bottom:0;
  right:0;
}

.common-lesson-list .lesson-block .concent-limit{
  text-align: center;
  font-size: 18px;
  font-weight: bold;
  line-height:1;
  text-align: center;
  color:#dc4f2d;
  margin-bottom: 4px;
}

.common-lesson-list .lesson-block .concent-area .common-orange-button{
  width:76px;
  margin:0 auto;
  box-shadow: none;
  font-size: 20px;
  height:36px;
}

.common-lesson-list .lesson-block .cancel-area{
  width:calc(100% - 300px);
  position: absolute;
  bottom:0;
  right:0;
}

.common-lesson-list .lesson-block .start-left{
  text-align: center;
  font-size: 18px;
  font-weight: bold;
  line-height:1;
  text-align: center;
  color:#dc4f2d;
  margin-bottom: 8px;
}

.common-lesson-list .lesson-block .cancel-area .matching-cancel-modal-open{
  cursor: pointer;
  width:fit-content;
  height:16px;
  margin:0 auto;
  border-radius:8px;
  display:flex;
  align-items: center;
  justify-content: center;
  padding:0 8px;
  color:#808080;
  font-size: 12px;
  line-height:1;
  font-weight: normal;
  border:1px solid #808080;
}

.common-lesson-list .lesson-block .cancel-area .interview-cancel-modal-open{
  cursor: pointer;
  width:fit-content;
  height:16px;
  margin:0 auto;
  border-radius:8px;
  display:flex;
  align-items: center;
  justify-content: center;
  padding:0 8px;
  color:#808080;
  font-size: 12px;
  line-height:1;
  font-weight: normal;
  border:1px solid #808080;
}

.common-lesson-list .lesson-block .cancel-area .offer-cancel-modal-open{
  cursor: pointer;
  width:fit-content;
  height:16px;
  margin:0 auto;
  border-radius:8px;
  display:flex;
  align-items: center;
  justify-content: center;
  padding:0 8px;
  color:#808080;
  font-size: 12px;
  line-height:1;
  font-weight: normal;
  border:1px solid #808080;
}

.common-lesson-list .lesson-block .report-area{
  width:calc(100% - 300px);
  position: absolute;
  bottom:0;
  right:0;
  z-index:10;
}

.common-lesson-list .lesson-block .report-area .past-time{
  font-size: 12px;
  text-align: center;
  color:#808080;
  margin-bottom: 8px;
}

.common-lesson-list .lesson-block .report-area .common-orange-button{
  margin:0 auto;
  font-size: 16px;
  width:130px;
  height:28px;
}

.common-lesson-list .lesson-block .result-area{
  width:calc(100% - 300px);
  position: absolute;
  bottom:0;
  right:0;
  text-align: right;
}

.common-lesson-list .lesson-block .result-area .result-text{
  font-size: 11px;
  color:#808080;
  text-align: right;

}

.common-lesson-list .lesson-block .result-area .result{
  font-size: 14px;
  color:#666666;
  text-align: right;
  font-weight: bold;
  margin-top: 6px;
}

.common-lesson-list .lesson-block .result-area .result span{
  font-size: 20px;
}

.common-lesson-list .lesson-block .edit-button{
  position: absolute;
  bottom:0;
  right:24px;
  width:100px;
  height:30px;
  font-size: 20px;
}

.common-lesson-list .lesson-block .lesson-delete-modal-open{
  position: absolute;
  top:0;
  bottom:0;
  margin:auto;
  cursor: pointer;
  left:-64px;
  width:fit-content;
  height:16px;
  border-radius:8px;
  display:flex;
  align-items: center;
  justify-content: center;
  padding:0 8px;
  color:#808080;
  font-size: 12px;
  line-height:1;
  font-weight: normal;
  border:1px solid #808080;
}

/*講座リスト*/

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

.lesson-delete-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;
}

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

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

.lesson-delete-modal .frame p{
  font-weight: bold;
  font-size: 18px;
}

.lesson-delete-modal .lesson-delete-button{
  margin:32px auto 0;
}

.lesson-delete-modal .lesson-delete-cancel{
  position: absolute;
  cursor: pointer;
  width:32px;
  bottom:32px;
  right:24px;
}
/*講座削除モーダル*/


/*講座詳細*/
.common-lesson-detail .info-flex{
  display: flex;
  justify-content: space-between;
  flex-wrap:wrap;
}

.common-lesson-detail .info-flex .left{
  width:460px;
}

.common-lesson-detail .info-flex .right{
  width:440px;
}

.common-lesson-detail .line1{
  display: flex;
  margin-bottom: 16px;
  padding-left: 10px;
}

.common-lesson-detail .line1 .lesson-language-icon{
  width:36px;
  height:36px;
  border-radius: 50%;
  position: relative;
  box-shadow: 1px 1px 1px rgba(0,0,0,0.35);
}

.common-lesson-detail .line1 .lesson-language-icon img{
  width:100%;
  height:100%;
  border-radius: 50%;
  object-fit: cover;
}

.common-lesson-detail .line1 .target-icon{
  position: absolute;
  width:20px;
  height:20px;
  border-radius: 50%;
  display:flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  font-weight: bold;
  line-height:1;
  letter-spacing:0;
  color:#666666;
  box-shadow: 1px 1px 1px rgba(0,0,0,0.35);

  padding-top: 2px;
}

.common-lesson-detail .line1 .target-icon-a{
  background-color:#dcf2d3;
  top:-6px;
  left:-12px;
}
.common-lesson-detail .line1 .target-icon-b{
  background-color:#e4d4ff;
  top:-18px;
  left:0;
  right:0;
  margin:auto;
}
.common-lesson-detail .line1 .target-icon-c{
  background-color:#d5e6f2;
  top:-6px;
  right:-12px;
}
.common-lesson-detail .line1 .target-icon-d{
  background-color:#f1fada;
  bottom:-6px;
  right:-12px;
}
.common-lesson-detail .line1 .target-icon-e{
  background-color:#f0a473;
  color:#fff;
  bottom:-6px;
  left:-12px;
}

.common-lesson-detail .line1 .lesson-title{
  width:315px;
  padding-left: 28px;
  padding-right: 16px;
  color:#666666;
  font-size: 20px;
  font-weight: bold;
  line-height:1.8;
  padding-top: 4px;
}

.common-lesson-detail .line1 .lesson-price{
  text-align: right;
  color:#666666;
  font-weight: bold;
  font-size: 20px;
}

.common-lesson-detail .line1 .lesson-time{
  text-align: right;
  color:#666666;
  font-weight: bold;
  font-size: 14px;
}

.common-lesson-detail .line2{
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 8px;
}

.common-lesson-detail .line2 .lesson-category-icon{
  width:50px;
  height:50px;
}

.common-lesson-detail .line2 .ul-flex{
  display: flex;
  align-items: center;
}

.common-lesson-detail .line2  ul.features-list{
  display: flex;
}

.common-lesson-detail .line2  ul.features-list li{
  width:32px;
  height:32px;
  border-radius: 50%;
  margin-left: 10px;
}


.common-lesson-detail .line2  ul.features-list{
  display: flex;
}

.common-lesson-detail .line2  ul.features-list li{
  width:32px;
  height:32px;
  border-radius: 50%;
  margin-left: 10px;
}

.common-lesson-detail .line2  ul.tool-list{
  display: flex;
  align-items: center;
  margin-left: 12px;
}

.common-lesson-detail .line2  ul.tool-list li{
  width:38px;
  height:38px;
  margin-left: 6px;
}

.common-lesson-detail .line2  ul.tool-list li.wechat-icon{
  width:38px;
  height:32px;
  margin-left: 6px;
}

.common-lesson-detail .prof-box{
  display: flex;
  align-items: center;
  width:300px;
  height:72px;
  border-top-right-radius: 36px;
  border-bottom-right-radius: 36px;
  background-color:#e6ded1;
  box-shadow:2px 2px 2px rgba(0,0,0,0.2);
  padding-left: 8px;
  padding-right: 32px;
  position: relative;
}

.common-lesson-detail .prof-box .teacher-country{
  position: absolute;
  width:22px;
  right: 24px;
  bottom: 12px;
}

.common-lesson-detail .prof-box .country-icon-frame{
  width:100%;
  aspect-ratio: 1 / 1;
  /* height:100%; */
  position: relative;
  overflow: hidden;
  box-shadow: 0.7px 0.7px 0.7px rgb(0 0 0 / 35%);
}

.common-lesson-detail .prof-box .country-icon-frame img{
  display:block;
  position: absolute;
  width:150%!important;
  height:150%!important;
  object-fit: cover;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}

.common-lesson-detail .prof-box .thumb{
  width:44px;
  height:44px;
  border-radius: 50%;
  box-shadow:3px 3px 3px rgba(0,0,0,0.35);
}

.common-lesson-detail .prof-box .thumb img{
  width:100%;
  height:100%;
  object-fit: cover;
  border-radius: 50%;
}

.common-lesson-detail .prof{
  width:calc(100% - 44px);
  padding-left: 24px;

}

.common-lesson-detail .teacher-name{
  font-weight: bold;
  color:#666666;
  line-height:1;
  margin-bottom: 6px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.common-lesson-detail .icon-flex{
  display: flex;
  align-items: center;
}

.common-lesson-detail .performance-count{
  margin-right: 16px;
  padding-left: 24px;
  color:#99abb3;
  line-height:1;
  position: relative;
}

.common-lesson-detail .performance-count::before{
  content:'';
  width:12px;
  height:21px;
  background-image: url('../img/common/human-icon.png');
  position: absolute;
  left:3px;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}

.common-lesson-detail .evaluation{
  padding-left: 24px;
  color:#e69e35;
  font-weight: bold;
  line-height:1;
  position: relative;
  padding-top: 3px;
}

.common-lesson-detail .evaluation::before{
  content:'';
  width:20px;
  height:19px;
  background-image: url('../img/common/star.png');
  position: absolute;
  left:0;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}
/*講座詳細*/


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

}

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

.common-calendar .day-flex{
  display: flex;
  justify-content:center;
  align-items: center;
  margin-bottom: 32px;
}

.common-calendar .day-flex p{
  font-size: 20px;
  font-weight: bold;
  color:#697c85;
  margin:0 56px;
}

.common-calendar .day-flex img{
  width:23px;
}

.common-calendar .day-list{
  display: flex;
  flex-direction:column;
}

.common-calendar .line{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items: center;
  margin-bottom: 16px;
}

.common-calendar .title{
  text-align: center;
}

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

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

.common-calendar .thumb-frame .thumb{
  width:76px;
  height:76px;
  display: block;
  border-radius: 50%;
}

.common-calendar .thumb-frame .thumb img{
  width:100%;
  height:100%;
  border-radius: 50%;
  object-fit: cover;
}

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

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

.common-calendar .hour-block{
  width:34px;
  height:90px;
  display: flex;
  flex-direction: column;
  position: relative;
}

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

.common-calendar .hour-block .hour{
  position: absolute;
  top:3px;
  left:6px;
  color:#808080;
  font-size: 14px;
  line-height:1;
}

.common-calendar .hour-block .hour24{
  left:auto;
  right:2px;
}

.common-calendar .section .minutes{
  border-right:1px solid #808080;
}

.common-calendar .minutes{
  width:100%;
  height:50%;
  border-right:1px solid #e0e0e0;
  background-color:#fff;
}

.common-calendar .hour-block:last-child .minutes{
  border-right:none;
}

.common-calendar .minutes.midnight.on{
  background-color:#b8def5;
}
.common-calendar .minutes.morning.on{
  background-color:#e8d388;
}
.common-calendar .minutes.evening.on{
  background-color:#c4baf2;
}
.common-calendar .minutes.night.on{
  background-color:#cccccc;
}

.common-calendar .minutes.offered{
  background-color:#ffe0e0!important;
}
.common-calendar .minutes.my-offer{
  background-color:#ffe0e0!important;
}
.common-calendar .minutes.add-my-offer{
  background-color:#ffe0e0!important;
}
.common-calendar .minutes.reserved,
.common-calendar .minutes.offered.reserved,
.common-calendar .minutes.my-offer.reserved,
.common-calendar .minutes.add-my-offer.reserved{
  background-color:#ff0000!important;
}


.common-calendar .info-area{
  width:100%;
  margin-top: 6px;
  margin-bottom: 20px;
  display: flex;
  align-items: center;
}

.common-calendar .info-area .name{
  width:150px;
  height:24px;
  border-radius: 12px;
  background-color: #f2e5d0;
  display: flex;
  justify-content: center;
  align-items: center;
  padding:0 6px;
  margin-right: 24px;
}

.common-calendar .info-area .name p{
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  color: #705f42;
  font-weight: bold;
  line-height: 1;
}


.common-calendar .info-area .country{
  width:18px;
  margin-right: 16px;
}

.common-calendar .info-area .country-icon-frame{
  width:100%;
  aspect-ratio: 1 / 1;
  /* height:100%; */
  position: relative;
  overflow: hidden;
  box-shadow: 0.7px 0.7px 0.7px rgb(0 0 0 / 35%);
}

.common-calendar .info-area .country-icon-frame img{
  display:block;
  position: absolute;
  width:150%!important;
  height:150%!important;
  object-fit: cover;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}


.common-calendar .info-area .evaluation{
  /* margin-right: 44px;  */
  width:105px;
  padding-left: 26px;
  color:#e69e35;
  font-weight: bold;
  line-height:1;
  position: relative;
}

.common-calendar .info-area .evaluation::before{
  content:"";
  width:22px;
  height:21px;
  background-image: url('../img/common/star.png');
  position: absolute;
  left:0;
  top:-4px;
}

.common-calendar .info-area .lesson-count{
  position: relative;
  width:80px;
  padding-left: 32px;
  color:#595959;
  line-height:1;
}

.common-calendar .info-area .lesson-count::before{
  content:"";
  width:25px;
  height:20px;
  background-image: url('../img/common/lesson-icon.png');
  position: absolute;
  left:0;
  top:-2px;
}

.common-calendar .info-area .performance-count{
  position: relative;
  padding-left: 24px;
  color:#595959;
  line-height:1;
}

.common-calendar .info-area .performance-count::before{
  content:"";
  width:18.5px;
  height:18px;
  background-image: url('../img/common/student-icon.png');
  position: absolute;
  left:0;
  top:-2px;
}


.common-calendar .offer-modal{
  position: absolute;
  width:480px;
  top:calc(100% - 0px);
  left:0;
  right:0;
  margin:auto;
  background-color:#fff;
  /* padding:40px 0 80px; */
  padding:40px 64px 80px;
  border:3px solid #665b4c;
  /* display: flex;
  justify-content: center; */
  z-index:6;
  opacity: 0;
  pointer-events: none;
  transition-duration: 0.4s;
}

.common-calendar .offer-modal.show{
  opacity: 1;
  pointer-events: auto;
}

.common-calendar .offer-modal .frame{
  position: relative;
}

.common-calendar .offer-modal .day{
  text-align: center;
  margin:32px 0 40px;
  font-size: 28px;
  color:#697c85;
  font-weight: bold;
  line-height:1;
}

.common-calendar .offer-modal .select-frame{
  position: relative;
  width:125px;
  margin:0 auto 28px;
}

.common-calendar .offer-modal .select-frame .wave{
  position: absolute;
  top:12px;
  right:-32px;
  font-size: 18px;
  font-weight: bold;
  line-height:1;
  color:#656565;
}


.common-calendar .offer-modal .select-frame::after{
  content:'';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8px 10px 0 10px;
  border-color: #656565 transparent transparent transparent;
  position: absolute;
  top:0;
  bottom:0;
  right:24px;
  margin:auto;
  pointer-events: none;
}

.common-calendar .offer-modal .select-frame select{
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  border:none;
  background:none;
  display: block;
  width:100%;
  height:40px;
  background-color:#fff;
  padding:0 20px;
  border:1px solid #424242;
  font-size: 18px;
  color:rgba(0,0,0,0.6);
  cursor:pointer;
}

.common-calendar .offer-modal .tool-p{
  text-align: center;
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 32px;
}

.common-calendar .offer-modal .set-tool-list{
  display: flex;
  justify-content: space-between;
  margin-bottom: 32px;
}

.common-calendar .offer-modal .set-tool-list .set-tool-block{
  cursor: pointer;
  display: block;
  position: relative;
  z-index:6;
}

.common-calendar .offer-modal .set-tool-list .icon{
  height:56px;
  width:56px;
  margin-bottom: 6px;
}

.common-calendar .offer-modal .set-tool-list .icon.wechat-icon{
  width:70px;
}

.common-calendar .offer-modal .set-tool-list p{
  text-align: center;
  line-height:1;
  font-size: 12px;
  margin-bottom: 12px;
}

.common-calendar .offer-modal .set-tool-list p.use{
  color:#666666;
  font-weight: bold;
}

.common-calendar .offer-modal .set-tool-list input{
  display: block;
  width:12px;
  height:12px;
  margin:0 auto;
  cursor:pointer;
}

.common-calendar .offer-modal .offer-set-button{
  width:135px;
  margin:0 auto;
}

.common-calendar .offer-modal .offer-modal-close{
  cursor: pointer;
  position: absolute;
  width:32px;
  right:-32px;
  bottom:-6px;
}
/*スケジュールリスト*/

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

.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;
}

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

.common-offer-detail .flex .right{
  max-width: 470px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}


.common-offer-detail .flex .lesson-language-icon{
  width:36px;
  height:36px;
  border-radius: 50%;
  position: relative;
  box-shadow: 1px 1px 1px rgba(0,0,0,0.35);
}

.common-offer-detail .flex .lesson-language-icon img{
  width:100%;
  height:100%;
  border-radius: 50%;
  object-fit: cover;
}

.common-offer-detail .flex .target-icon{
  position: absolute;
  width:20px;
  height:20px;
  border-radius: 50%;
  display:flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  font-weight: bold;
  line-height:1;
  letter-spacing:0;
  color:#666666;
  box-shadow: 1px 1px 1px rgba(0,0,0,0.35);

  padding-top: 2px;
}

.common-offer-detail .flex .target-icon-a{
  background-color:#dcf2d3;
  top:-6px;
  left:-12px;
}
.common-offer-detail .flex .target-icon-b{
  background-color:#e4d4ff;
  top:-18px;
  left:0;
  right:0;
  margin:auto;
}
.common-offer-detail .flex .target-icon-c{
  background-color:#d5e6f2;
  top:-6px;
  right:-12px;
}
.common-offer-detail .flex .target-icon-d{
  background-color:#f1fada;
  bottom:-6px;
  right:-12px;
}
.common-offer-detail .flex .target-icon-e{
  background-color:#f0a473;
  color:#fff;
  bottom:-6px;
  left:-12px;
}

.common-offer-detail .flex .lesson-title{
  width:330px;
  padding-left: 28px;
  padding-right: 16px;
  color:#666666;
  font-size: 20px;
  font-weight: bold;
  line-height:1.8;
  padding-top: 4px;
}

.common-offer-detail .flex .lesson-price{
  text-align: right;
  color:#666666;
  font-weight: bold;
  font-size: 20px;
}

.common-offer-detail .flex .lesson-time{
  text-align: right;
  color:#666666;
  font-weight: bold;
  font-size: 14px;
}

.common-offer-detail .flex .lesson-category-icon {
  width: 50px;
  height: 50px;
}

.common-offer-detail .flex .ul-flex {
  display: flex;
  align-items: center;
}

.common-offer-detail .flex ul.features-list {
  display: flex;
}

.common-offer-detail .flex ul.features-list li {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  margin-left: 10px;
}

.common-offer-detail .flex ul.tool-list {
  display: flex;
  align-items: center;
  margin-left: 12px;
}

.common-offer-detail .flex ul.tool-list li {
  width: 38px;
  height: 38px;
  margin-left: 6px;
}

.common-offer-detail .flex ul.tool-list li.wechat-icon {
  width: 38px;
  height: 32px;
  margin-left: 6px;
}
/*オファー内容詳細*/


/*会員情報box*/

.common-prof-box{
  display: flex;
  align-items: center;
  width: 300px;
  height: 72px;
  border-top-right-radius: 36px;
  border-bottom-right-radius: 36px;
  background-color:#e6ded1;

  box-shadow: 2px 2px 2px rgb(0 0 0 / 20%);
  padding-left: 8px;
  padding-right: 32px;
  position: relative;
}


.common-prof-box.student{
  background-color: #f1fada;
}


.common-prof-box .thumb{
  width:44px;
  height:44px;
  border-radius: 50%;
  box-shadow:3px 3px 3px rgba(0,0,0,0.35);
}

.common-prof-box .thumb img{
  width:100%;
  height:100%;
  object-fit: cover;
  border-radius: 50%;
}

.common-prof-box .prof{
  width:calc(100% - 44px);
  padding-left: 24px;

}

.common-prof-box .teacher-country{
  position: absolute;
  right:24px;
  bottom:12px;
  width:24px;
  height:24px;
}

.common-prof-box .country-icon-frame{
  width:100%;
  aspect-ratio: 1 / 1;
  /* height:100%; */
  position: relative;
  overflow: hidden;
  box-shadow: 0.7px 0.7px 0.7px rgb(0 0 0 / 35%);
}

.common-prof-box .country-icon-frame img{
  display:block;
  position: absolute;
  width:150%!important;
  height:150%!important;
  object-fit: cover;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}

.common-prof-box .teacher-name{
  font-weight: bold;
  color:#666666;
  line-height:1;
  margin-bottom: 6px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}


.common-prof-box .evaluation{
  padding-left: 24px;
  color:#e69e35;
  font-weight: bold;
  line-height:1;
  position: relative;
  padding-top: 3px;
}

.common-prof-box .evaluation::before{
  content:'';
  width:20px;
  height:19px;
  background-image: url('../img/common/star.png');
  position: absolute;
  left:0;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}
/*会員情報box*/


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

}

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

.common-teacher-list .teacher-block .teacher-left{
  width:440px;
  display:flex;
}

.common-teacher-list .teacher-block .teacher-right{
  width:430px;

}

.common-teacher-list .teacher-block .teacher-right p{
  color:rgba(0,0,0,0.6);
  line-height:1.5;
  /* max-height:100px;
  overflow: hidden;
  text-overflow: ellipsis; */
}

.common-teacher-list .teacher-block .frame{
  width:92px;
  margin-right: 24px;
  position: relative;
}

.common-teacher-list .teacher-block .thumb{
  width:92px;
  height:92px;
  border-radius: 50%;
  box-shadow:3px 3px 3px rgba(0,0,0,0.35);
}

.common-teacher-list .teacher-block .thumb img{
  width:100%;
  height:100%;
  border-radius: 50%;
  object-fit: cover;
}

.common-teacher-list .teacher-block .info-area{
  width:calc(100% - 116px);
}

.common-teacher-list .teacher-block .name{
  color:#705f42;
  font-size: 24px;
  font-weight: bold;
  line-height:1.2;
  padding-left: 40px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  position: relative;
  margin-bottom: 16px;
}

.common-teacher-list .teacher-block .name::before{
  content:'';
  width:28px;
  height:28px;
  background-image: url('../img/common/teacher-icon.png');
  position: absolute;
  top:0;
  left:0;
}

.common-teacher-list .teacher-block .name.Student::before{
  background-image: url('../img/common/student-prof-icon.png');
}


.common-teacher-list .teacher-block .line{
  display: flex;
  align-items: center;
  position: relative;
}

.common-teacher-list .teacher-block .country{
  width:32px;
  height:32px;
  /* box-shadow: 0.7px 0.7px 0.7px rgb(0 0 0 / 35%); */
  margin-right: 10px;
}


.common-teacher-list .teacher-block .country{
  width:30px;
  margin-right: 10px;
}

.common-teacher-list .teacher-block .country-icon-frame{
  width:100%;
  aspect-ratio: 1 / 1;
  /* height:100%; */
  position: relative;
  overflow: hidden;
  box-shadow: 0.7px 0.7px 0.7px rgb(0 0 0 / 35%);
}

.common-teacher-list .teacher-block .country-icon-frame img{
  display:block;
  position: absolute;
  width:150%!important;
  height:150%!important;
  object-fit: cover;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}


.common-teacher-list .teacher-block .language-line{
  position: absolute;
  right:0;
  bottom:-4px;
  display:flex;
  justify-content: flex-end;
}

.common-teacher-list .teacher-block .language-line .language{
  width:30px;
}

.common-teacher-list .teacher-block .language-line .language-icon-frame{
  width:100%;
  aspect-ratio: 1 / 1;
  /* height:100%; */
  position: relative;
  overflow: hidden;
  box-shadow: 0.7px 0.7px 0.7px rgb(0 0 0 / 35%);
  border-radius: 50%;
}

.common-teacher-list .teacher-block .language-line .language-icon-frame img{
  display:block;
  position: absolute;
  width:150%!important;
  height:150%!important;
  object-fit: cover;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}

.common-teacher-list .teacher-block .language-line .language0{
  margin-right: 6px;
}
.common-teacher-list .teacher-block .language-line .language2{
  margin-left: -8px;
}

.common-teacher-list .teacher-block .language-line img{
  width:100%;
}

.common-teacher-list .teacher-block .evaluation{
  width:124px;
  padding-left: 24px;
  color:#e69e35;
  font-weight: bold;
  line-height:1;
  position: relative;
  padding-top: 3px;
}

.common-teacher-list .teacher-block .evaluation::before{
  content:'';
  width:20px;
  height:19px;
  background-image: url('../img/common/star.png');
  position: absolute;
  left:0;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}

/*講師リスト*/


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

.common-teacher-search-area .search-flex{
  display: flex;
  justify-content: space-between;
  align-items:center;
  /* flex-wrap: wrap; */
  margin-bottom: 20px;
}

.common-teacher-search-area .search-flex.top{
  align-items: flex-start;
}

.common-teacher-search-area p.language-text{
  text-align: center;
  font-size: 14px;
  font-weight: bold;
  line-height: 1;
  margin-bottom: 8px;
  color: #baaa8f;
}

.common-teacher-search-area .search-flex .search-frame{
  width:330px;
  display: flex;
}

.common-teacher-search-area .search-flex .search-frame-verti{
  flex-direction: column;
}

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

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

.common-teacher-search-area .title{
  color: #baaa8f;
  font-size: 14px;
  font-weight: bold;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
  margin-bottom: 3px;
  /* padding-left: 24px; */
}

.common-teacher-search-area .title.w-240{
  width:240px;
  margin-bottom: 6px;
}

.common-teacher-search-area .min-flex{
  display: flex;
  align-items:center;
  margin-bottom: 8px;
}

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

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


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

.common-teacher-search-area .select-frame{
  position: relative;
}
.common-teacher-search-area .select-frame::before{
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8px 10px 0 10px;
  border-color: #4b3825 transparent transparent transparent;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 24px;
  margin: auto;
  pointer-events: none;
}

.common-teacher-search-area .search-block.w-330 .select-frame select{
  height:40px;
  font-size: 20px;
  border-radius: 20px;
}

.common-teacher-search-area .select-frame select{
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  border: none;
  background: none;
  display: block;
  width: 100%;
  height: 30px;
  border-radius: 15px;
  background-color: #fff;
  padding: 0 24px;
  border: 1px solid #5a5782;
  font-size: 15px;
  color: #4b3825;
  font-weight: bold;
  cursor: pointer;
}

.common-teacher-search-area .text-input{
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  border: none;
  background: none;
  display: block;
  width: 100%;
  height: 40px;
  padding: 0 24px;
  border: 1px solid #5a5782;
  font-size: 15px;
  color: #4b3825;
  background-color: #fff;
}

.common-teacher-search-area .search-button{
  margin:24px auto 0;
}
/*講師検索項目*/


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

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

.common-sort-list .sort-link{
  height:24px;
  border-radius:12px;
  border:1px solid #424242;
  margin:0 40px;
  display:flex;
  align-items: center;
  padding:2px 32px 0 16px;
  position: relative;
  color:#424242;
}

.common-sort-list .sort-link::after{
  content:'';
  width:13px;
  height:7.5px;
  background-image: url('../img/common/sort-angle.png');
  position: absolute;
  right:12px;
  top:0;
  bottom:0;
  margin:auto;
}

.common-sort-list .sort-link.on{
  background-color:#424242;
  color:#fff;
}

.common-sort-list .sort-link.on::after{
  background-image: url('../img/common/sort-angle-on.png');
}

.common-sort-list .sort-link.on.ASC::after{
  transform: rotateZ(180deg);
}

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


/*面談希望モーダル*/
.interview-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;
}

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

.interview-modal .frame{
  position: relative;
  background-color:#fff;
  width:480px;
  padding:40px 0;
  display: flex;
  justify-content: center;
}

.interview-modal .interview-modal-tomezone{
  text-align: center;
  font-size: 28px;
  color:#697c85;
  font-weight: bold;
  margin:12px 0 24px;
}

.interview-modal .day{
  text-align: center;
  margin:32px 0 40px;
  font-size: 28px;
  color:#697c85;
  font-weight: bold;
  line-height:1;
}

.interview-modal .select-frame{
  position: relative;

}

.interview-modal .select-frame1{
  width:180px;
  margin:0 auto 24px;
}

.interview-modal .select-frame2{
  width:140px;
  margin:0 auto 24px;
}

.interview-modal .select-frame::after{
  content:'';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8px 10px 0 10px;
  border-color: #656565 transparent transparent transparent;
  position: absolute;
  top:0;
  bottom:0;
  right:12px!important;
  margin:auto;
  pointer-events: none;
}

.interview-modal .select-frame select{
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  border:none;
  background:none;
  display: block;
  width:100%;
  height:40px;
  background-color:#fff;
  padding:0 20px;
  border:1px solid #424242;
  font-size: 18px;
  color:rgba(0,0,0,0.6);
  cursor:pointer;
}

.interview-modal .interview-set-button{
  width:135px;
  margin:0 auto;
}

.interview-modal .interview-set-button.rock{
  opacity:0.6;
  pointer-events: none;
}

.interview-modal .interview-modal-close{
  cursor: pointer;
  position: absolute;
  width: 32px;
  right: 32px;
  bottom: 32px;
}
/*面談希望モーダル*/


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

.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;
}


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


/*講座作成完了モーダル*/
.lesson-create-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;
}

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

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

.lesson-create-modal .frame p{
  font-weight: bold;
  font-size: 18px;
}


.lesson-create-modal .lesson-create-modal-cancel{
  position: absolute;
  cursor: pointer;
  width:32px;
  bottom:32px;
  right:24px;
}

/*講座作成完了モーダル*/

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

.tool-modal-frame .tool-modal-open{
  pointer-events: none;
}
.tool-modal-frame .use .tool-modal-open{
  pointer-events: auto;
  cursor: pointer;
  display: block;
  width:100%;
  height:100%;
}



.tool-modal{

}

.tool-modal{
  position: absolute;
  width:400px;
  top:calc(100% - 20px);
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  background-color:#fff;
  padding:40px 20px 50px;
  border:3px solid #665b4c;
  z-index:20;
  opacity: 0;
  pointer-events: none;
  transition-duration: 0.4s;
  display: flex;
  justify-content: center;
  cursor: default;
}

.tool-modal .common-title-flex.gray::before {
  background-image: none;
}

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

.tool-modal .frame{
  position: relative;
}

.tool-modal .use-tool-flex{
  display: flex;
  justify-content: center;
  align-items: center;
  margin:24px 0;
}

.tool-modal .use-tool-flex .icon{
  width:30px;
  height:30px;
  margin-right: 12px;
}

.tool-modal .use-tool-flex .icon.wechat-icon{
  width:37px;
}

.tool-modal .use-tool-flex .text{
  font-size: 18px;
  font-weight: bold;
  line-height:1;
}

.tool-modal .use-tool-flex .text.voov{
  color:#5558af;
}
.tool-modal .use-tool-flex .text.zoom{
  color:#5F93FC;
}
.tool-modal .use-tool-flex .text.wechat{
  color:#51c332;
}
.tool-modal .use-tool-flex .text.skype{
  color:#04ADEF;
}

.tool-modal .tool-line{
  margin-bottom: 12px;
}

.tool-modal .tool-line .p1{
  font-weight: bold;
  line-height:1;
  margin-bottom: 4px;
}

.tool-modal .tool-modal-close{
  cursor: pointer;
  width:32px;
  height:32px;
  position: absolute;
  left:calc(50% + 140px);
  bottom:-32px;
}

/*予約キャンセルモーダル*/
.matching-cancel-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;
}

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

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

.matching-cancel-modal .common-title-flex{
  margin-bottom: 40px;
}

.matching-cancel-modal .frame .cancel-text1{
  margin-bottom: 24px;
  font-size: 18px;
  text-align: center;
}

.matching-cancel-modal .frame .cancel-text2{
  color:#e87a00;
  font-size: 20px;
  font-weight: bold;
}

.matching-cancel-modal .matching-cancel-button{
  margin:32px auto 0;
}

.matching-cancel-modal .matching-cancel-cancel{
  position: absolute;
  cursor: pointer;
  width:32px;
  bottom:32px;
  right:24px;
}

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

/*面談キャンセルモーダル*/
.interview-cancel-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;
}

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

.interview-cancel-modal .common-title-flex{
  margin-bottom: 40px;
}

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

.interview-cancel-modal .frame p{
  font-weight: bold;
  font-size: 18px;
}

.interview-cancel-modal .interview-cancel-button{
  margin:32px auto 0;
}

.interview-cancel-modal .interview-cancel-cancel{
  position: absolute;
  cursor: pointer;
  width:32px;
  bottom:32px;
  right:24px;
}

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

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

.offer-cancel-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;
}

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

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

.offer-cancel-modal .common-title-flex{
  margin-bottom: 40px;
}

.offer-cancel-modal .common-title-flex{
  margin-bottom: 40px;
}

.offer-cancel-modal .frame .cancel-text1{
  margin-bottom: 24px;
  font-size: 18px;
  text-align: center;
}

.offer-cancel-modal .frame .cancel-text2{
  color:#e87a00;
  font-size: 20px;
  font-weight: bold;
}

.offer-cancel-modal .frame p{
  font-weight: bold;
  font-size: 18px;
}

.offer-cancel-modal .offer-cancel-button{
  margin:32px auto 0;
}

.offer-cancel-modal .offer-cancel-cancel{
  position: absolute;
  cursor: pointer;
  width:32px;
  bottom:32px;
  right:24px;
}
/*予約キャンセルモーダル*/


/*退会モーダル*/
.retire-modal{
  position: fixed;
  width:100%;
  height:100vh;
  top:0;
  left:0;
  z-index:100;
  background-color: rgba(0,0,0,0.8);
  display: flex;
  justify-content: center;
  align-items: center;
  transition: 0.4s;
  opacity:0;
  pointer-events: none;
}

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

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

.retire-modal p{
  text-align: center;
  color:#82684e;
}

.retire-modal .p1{
  font-size: 24px;
  font-weight: bold;
  margin-top: 48px;
  margin-bottom: 16px;
}

.retire-modal .p2{
  font-size: 13px;
  margin-bottom: 16px;
}

.retire-modal .p3{
  margin-bottom: 12px;
}

.retire-modal .p4{
  margin-bottom: 12px;
}

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

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

.retire-modal .retire-cancel{
  position: absolute;
  cursor: pointer;
  width:32px;
  bottom:32px;
  right:100px;
}

/*退会モーダル*/


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

}

body.top-body header{
  position: absolute;
  top:0;
  left:0;
  width:100%;
  z-index:10;
}

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

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: 124px;
  padding-bottom: 100px;
  min-height: 45vw;
}

.top-section1 .frame{
  max-width: 580px;
  padding:0 32px;
}

.top-section1 .p1{
  display:flex;
  align-items: flex-end;
  font-size: 57px;
  font-weight: bold;
  line-height:1;
  color:#82684e;
  margin-bottom: 56px;
}

.top-section1 .p1 span{
  font-size: 34px;
  font-weight: bold;
  line-height:1;
  color:#82684e;
  margin-left: 16px;
  padding-bottom: 6px;
}

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

.top-section1 .p2 span{
  font-size: 34px;
  font-weight: bold;
  line-height:1;
  color:#82684e;
  margin-left: 6px;
}

.top-section1 .btn{
  display:flex;
  align-items: center;
  justify-content: center;
  width:175px;
  height:48px;
  border-radius:24px;
  background-color:#dc4f2d;
  box-shadow:10px 10px 6px rgba(0,0,0,0.35);
  margin:16px 0 0 auto;
  font-size: 25px;
  color:#fff;
  font-weight: bold;
  line-height:1;
}

.top-section1 .top-text{
  width:400px;
  margin:32px 0 56px;
  /* width:515px;
  margin:40px auto 64px; */
}

.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-mv-section .button-frame{
  width: fit-content;
  margin:40px auto 0;
  position: relative;
}

.top-mv-section .button-frame a{
  display: flex;
  justify-content: center;
  align-items: center;
  width:235px;
  height:35px;
  border-radius: 20px;
  background-color: #99abb3;
  box-shadow: 3px 3px 3px rgba(0,0,0,0.6);
  font-size: 20px;
  line-height: 1;
  font-weight: bold;
  color:#fff;
}

.top-mv-section .button-frame span{
  font-size: 18px;
  font-weight: bold;
  color:#ff0000;
  line-height: 1;
  white-space: nowrap;
  position: absolute;
  left:calc(100% + 12px);
  top:4px;
}

.top-section2{
  background-color: #fff;
}

.top-section2 .swiper-block{
  position: relative;
  transform: translateY(-32px);
}

.top-section2 .swiper-container{
  height:205px;
}

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

.top-section2 .swiper-button::after{
  content:none!important;
}

.top-section2 .swiper-button img{
  width:100%;
}

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

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

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

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

.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: hidden;
  text-overflow: ellipsis;
  color:#5a5782;
  font-weight: bold;
  line-height:1;
}

.top-section3{

}


.top-section3 .white-box{
  position: relative;
  padding:16px 40px 56px;
}

.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: 40px;
  position: relative;
}


.top-section3 .advanced{
  position: absolute;
  bottom:0;
  right:-60px;
  height:24px;
  border-radius:12px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color:#f2e5d0;
  color:#94866f;
  font-size: 12px;
  font-weight: normal;
  line-height:1;
  padding:0 16px;
  box-shadow: 3px 3px 3px rgb(0 0 0 / 35%);
}

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

.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.5;
  margin-bottom: 8px;
}

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

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

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

.top-section3 .button-flex .block p{
  color:#614e30;
  line-height:1;
  text-align: center;
}

.top-section3 .button-flex .block a{
  display: flex;
  justify-content: space-between;
  align-items: center;
  width:100%;
  height:40px;
  border-radius: 20px;
  padding:0 20px;
  background-color:#94866f;
  margin:16px 0;
  font-size: 20px;
  font-weight: bold;
  color:#fff;
  line-height:1;
  box-shadow: 5px 5px 5px rgba(0,0,0,0.35);
}

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

.top-section3 .block-title{
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  height:40px;
  border-radius: 20px;
  background-color: #94866f;
  box-shadow: 5px 5px 5px rgba(0,0,0,0.35);
  margin-bottom: 24px;
  font-size: 24px;
  color:#fff;
  font-weight: bold;
  line-height:1;
}

.top-section3 .block-title .link{
  display: block;
  position: absolute;
  top:9px;
  bottom:0;
  margin:auto;
}

.top-section3 .block-title .link img{
  width:20px;
}

.top-section3 .block-title .prev-link{
  left:36px;
}

.top-section3 .block-title .next-link{
  right:36px;
}

.top-section3 .calendar-block{
  max-width:842px;
  margin:0 auto 32px;
  overflow:hidden;
  padding-left: 90px;
  padding-right: 48px;
  position: relative;
}

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

.top-section3 .calendar-block .icon1{
  top:67px;
}
.top-section3 .calendar-block .icon2{
  top:186px;
}
.top-section3 .calendar-block .icon3{
  top:305px;
}
.top-section3 .calendar-block .icon4{
  top:424px;
}
.top-section3 .calendar-block .icon5{
  top:543px;
}
.top-section3 .calendar-block .icon6{
  top:662px;
}

.top-section3 .calendar-list{
  display: flex;
  flex-wrap: wrap;
}

.top-section3 .calendar-list .day-block{
  width:88px;
  margin-right: 14px;
  margin-bottom: 14px;
}

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

.top-section3 .calendar-list .day-block p.week{
  text-align: center;
  color:#94866f;
  font-size: 18px;
  font-weight: bold;
  line-height:1;
}

.top-section3 .calendar-list .day-block .day{
  position: relative;
  text-align: center;
  font-size: 20px;
  font-weight: bold;
  line-height:1;
  color:#785e32;
  margin-bottom: 14px;
  padding-top: 1px;
}

.top-section3 .calendar-list .day-block .day.today{
  color:blue;
}

.top-section3 .calendar-list .day-block .day::before{
  content:'';
  width:300vw;
  height:23px;
  background-color:#ebddca;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  z-index:-3;
}

.top-section3 .calendar-list .day-block .num{
  height:22px;
  border-radius:11px;
  margin-bottom: 2px;
  display:flex;
  align-items: center;
  justify-content: center;
  line-height:1;
  color:#808080;
  padding-top: 3px;
}

.top-section3 .calendar-list .day-block .num.morning{
  background-color:rgb(211,250,148,0.30);
}
.top-section3 .calendar-list .day-block .num.noon{
  background-color:#fff1cf;
}
.top-section3 .calendar-list .day-block .num.night{
  background-color:rgb(224,224,224,0.56);
  margin-bottom: 0;
}

.top-section3 .calendar-list .day-block.next-month-day-block .num.morning{
  background:none;
  border:2px solid rgb(140,204,38,0.30);
}
.top-section3 .calendar-list .day-block.next-month-day-block .num.noon{
  background:none;
  border:2px solid #f5dea4;
}
.top-section3 .calendar-list .day-block.next-month-day-block .num.night{
  background:none;
  border:2px solid rgb(163,163,163,0.56);
}


.top-section4{
  padding:60px 0 72px;
}

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

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

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

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

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

.top-section4 .feature-block .title span{
  font-size: 24px;
  margin-left: 48px;
}

.top-section4 .feature-block .text{
  color:#685a4b;
  line-height:1.5;
  padding-left: 56px;
  max-width:810px;
  margin-bottom: 6px;
}

.top-section5{

}

.top-section5 .white-box{
  padding:72px 64px 96px;
  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: wrap;
  position: relative;
}

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

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

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

.top-section5 .how-block .border-block{
  margin-bottom: 20px;
}

.top-section5 .how-block .border-block .title1{
  padding-left: 20px;
  color:#666666;
  font-size: 20px;
  line-height:1.2;
}

.top-section5 .how-block .border-block .border{
  height:1px;
  background-color:#666666;
  margin-bottom: 4px;
}
.top-section5 .how-block .border-block .title2{
  padding-right: 8px;
  color:#666666;
  font-size: 14px;
  line-height:1.2;
  text-align: right;
}

.top-section5 .how-block .p1{
  color:#685a4b;
  line-height:1.2;
  margin-bottom: 24px;
}

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

.top-section5 .how-block .parent{
  position: relative;
}

.top-section5 .how-block .child{
  position: absolute;
  font-size: 10px;
  transform:scale(0.8) translateX(-8px);
  white-space:nowrap;
  left:0;
  top:-10px;
}

.top-section5 .how-block .child.no{
  transform:scale(0.8);
}

.top-section5 .how-block .link{
  display: flex;
  align-items: center;
  height:24px;
  border-radius:12px;
  border:1px solid #424242;
  color:#424242;
  justify-content: center;
  position: absolute;
  right:6px;
}

.top-section5 .how-block .link1{
  width:100px;
  top:72px;
}
.top-section5 .how-block .link2{
  width:100px;
  top:72px;
}
.top-section5 .how-block .link3{
  width:170px;
  top:72px;
}
.top-section5 .how-block .link4{
  width:170px;
  top:120px;
}

.top-section6{
  padding:80px 0 112px;
}

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

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

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

.top-section6 .about-list{
  display: flex;
  flex-wrap: wrap;
}

.top-section6 .about-block{
  height:96px;
  border-radius:48px;
  background-color:#e0d0ba;
  padding:0 32px 0 100px;
  position: relative;
  margin-bottom: 32px;
  margin-right: 32px;
  display: flex;
  align-items: center;
}

.top-section6 .about-block:nth-child(even){
  margin-right: 0;
}

.top-section6 .about-block img{
  position: absolute;
  left:12px;
  top:0;
  bottom:0;
  margin:auto;
  width:75px;
  height:75px;
  border-radius:50%;
}

.top-section6 .about-block .p3{
  color:#82684e;
  font-size: 18px;
  font-weight: bold;
  line-height: 1;
  margin-bottom:6px;
}

.top-section6 .about-block .p4{
  color:#685a4b;
  font-size: 14px;
  line-height: 1;
}


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

}

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


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

}

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

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

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

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

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

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

.info-section1 .text-flex .text{
  position: relative;
  color:#82684e;
  font-size: 22px;
  font-weight: bold;
  text-align: center;
  line-height:1.2;
}

.info-section1 .text-flex .text::before{
  content:'';
  width:202px;
  height:62px;
  background-image: url('../img/common/shadow-bg.png');
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  z-index:-3;
}

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

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

.info-section1 .white-box p{
  font-size: 24px;
  font-weight: bold;
  color:#f27d6f;
  text-align: center;
  margin-bottom: 16px;
}

.info-section1 .white-box ul li{
  font-size: 18px;
  font-weight: bold;
  color:#82684e;
  margin-bottom: 4px;
}

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

.info-section2 p.step-text{
  text-align: center;
  color:#f27d6f;
  font-size: 24px;
  font-weight: bold;
  line-height:1;
  margin-top: -40px;
  margin-bottom: 20px;
}

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

.info-section2 .step-list{

}

.info-section2 .step-list .arrow{
  width:45px;
  margin:20px 0 20px 58px;
}

.info-section2 .step-block{
  display: flex;
  justify-content: space-between;
}

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

.info-section2 .step-block .left img{
  width:100%;
}

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

.info-section2 .step-block .border-title{
  border-bottom: 1px solid #666666;
  margin-bottom: 28px;
  padding-left: 12px;
  padding-bottom: 8px;
  color:#666666;
  font-size: 20px;
  line-height:1;
}

.info-section2 .step-block .p1{
  font-size: 14px;
  color:#685a4b;
  line-height:2.1;
}

.info-section2 .step-block .more{
  position: absolute;
  right:8px;
  width:100px;
  height:28px;
  border-radius: 14px;
  border:1px solid #82684e;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  font-weight: bold;
  line-height:1;
  color:#82684e;
}

.info-section2 .step-block .link1{
  top:-8px;
}
.info-section2 .step-block .link2{
  top:-8px;
}

.info-section2 .step-block .sign{
  position: absolute;
  top:72px;
  right:8px;
  display:flex;
  align-items: center;
  justify-content: center;
  width:175px;
  height:48px;
  border-radius:24px;
  background-color:#dc4f2d;
  box-shadow:10px 10px 6px rgba(0,0,0,0.35);
  font-size: 25px;
  color:#fff;
  font-weight: bold;
  line-height:1;
}

.info-section2 ul{
  margin-top: 72px;
  margin-left: 24px;
  margin-bottom: 32px;
}

.info-section2 ul li{
  position: relative;
  padding-left: 12px;
  font-size: 14px;
  color:#685a4b;
  line-height:2;
}

.info-section2 ul li::before{
  content:"＊";
  font-size: 14px;
  color:#685a4b;
  line-height:2;
  position: absolute;
  left:0;
  top:0;
}

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

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

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

.info-section4 .flow-frame{
  padding-top: 16px;
  display:flex;
  justify-content: center;
}

.info-section4 .flow-list{

}

.info-section4 .flow-block{
  margin-bottom: 32px;
  padding-left: 52px;
  position: relative;
  padding-top: 8px;
}

.info-section4 .flow-block:last-child{
  margin-bottom: 0;
}

.info-section4 .flow-block .num{
  position: absolute;
  left:0;
  top:0;
  padding-top: 1px;
  width:34px;
  height:34px;
  border-radius: 50%;
  background-color:#e0d0ba;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 18px;
  font-weight: bold;
  line-height:1;
  color:#fff;
}

.info-section4 .flow-block .title{
  color:#82684e;
  font-size: 18px;
  font-weight: bold;
  line-height:1;
  margin-bottom: 24px;
}

.info-section4 .flow-block .text{
  color:#685a4b;
  font-size: 14px;
  line-height:2.1;
}

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

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

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

.info-section5 .text-flex .block{
  width:275px;
  margin-right: 32px;
  padding-left: 52px;
  position: relative;
  padding-top: 2px;
}

.info-section5 .text-flex .block .num{
  position: absolute;
  left:0;
  top:0;
  padding-top: 1px;
  width:34px;
  height:34px;
  border-radius: 50%;
  background-color:#e0d0ba;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 18px;
  font-weight: bold;
  line-height:1;
  color:#fff;
}

.info-section5 .text-flex .block:last-child{
  margin-right: 0;
}

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

.info-section5 .img-flex{
  display: flex;
  align-items: flex-start;
  padding-left: 72px;
}

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

.info-section5 .img-flex .img-block:last-child{
  margin-right: 0;
}

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

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

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

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

.info-section5 .img-flex .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:800px;
}



/*
------------------------------------------------
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; */
}


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

.login-section .login-block{
  max-width:430px;
  margin:0 auto;
}

.login-section .login-block label{
  font-size: 18px;
  font-weight: bold;
  position: relative;
  color:rgba(0,0,0,0.6);
}

.login-section .login-block label::after{
  content:'*';
  color:#ff0000;
  font-weight: bold;
  font-size: 18px;
  position: absolute;
  right:-16px;
  top:-3px;
}

.login-section .login-block .um input[type=submit].um-button{
  border:none!important;
  background:none!important;
  width:205px!important;
  height:40px!important;
  border-radius: 40px!important;
  background-color:#f0a473!important;
  display: flex!important;
  justify-content: center!important;
  align-items: center!important;
  font-size: 22px!important;
  font-weight: bold!important;
  line-height:1!important;
  color:#fff!important;
  box-shadow: 3px 3px 3px rgba(0,0,0,0.35)!important;
  cursor: pointer!important;
  padding:0!important;
  padding-top: 3px!important;
  margin:0 auto!important;
}


.login-section .pass-reset{
  display: flex;
  justify-content:center;
}

.login-section .pass-reset a{
  display: flex;
  flex-direction: column;
  align-items: center;
  color:rgba(0,0,0,0.6);
}

.login-section .pass-reset a p{
  font-weight: normal;
  line-height:1;
  text-align: center;
}

.login-section .pass-reset a span{
  width:210px;
  height:1px;
  background-color: #94866f;
  margin:2px 0;
}

.login-section .common-cancel-link{
  bottom:56px;
}


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

.logout-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;
}

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

.logout-modal .frame{
  width:880px;
  height:70vh;
  max-height:500px;
  border:1px solid #000000;
  background-color:rgba(255,255,255,0.9);
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
}

.logout-modal .p1{
  margin-top: 48px;
  text-align: center;
  color:#82684e;
  font-size: 24px;
  font-weight: bold;
  line-height:1;
  margin-bottom: 20px;
}

.logout-modal .p2{
  text-align: center;
  color:#82684e;
  font-size: 13px;
  line-height:1;
  margin-bottom: 56px;
}

.logout-modal .btn{
  width:135px;
  height:40px;
  border-radius: 20px;
  background-color:#e87a00;
  box-shadow:3px 3px 3px rgba(0,0,0,0.35);
  margin:0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 22px;
  font-weight: bold;
  line-height:1;
  color:rgba(255,255,255,0.85);
}

.logout-modal .logout-close{
  position: absolute;
  width:37px;
  bottom:40px;
  right:120px;
}
/* .logout-modal .p3{
  text-align: center;
}

.logout-modal .p3 span{
  padding:0 16px 8px;
  color:rgba(0,0,0,0.6);
  border-bottom: 1px solid rgba(0,0,0,0.6);
  line-height:1;
  cursor: pointer;
} */

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

main.register-main{

}

.resister-section{
  padding-bottom: 72px;
  justify-content: center;
}

.resister-section .err-text{
  color:#ff0000;
}

.resister-section .register-block{

}

.resister-section .block{
  max-width:430px;
  margin:0 auto 24px;
}

.resister-section p.p1{
  margin-top: 24px;
  font-size: 18px;
  color:#82684e;
  text-align: center;
  font-weight: bold;
}

.resister-section p.p2{
  font-size: 13px;
  color:#82684e;
  text-align: center;
  margin-bottom: 16px;
}

.resister-section .block .label-flex{
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 8px;
}

.resister-section .block .label-flex p{
  font-size: 14px;
}

.resister-section .block label{
  font-size: 18px;
  font-weight: bold;
  position: relative;
  line-height:1;
}

.resister-section .block label::after{
  content:'*';
  color:#ff0000;
  font-weight: bold;
  font-size: 18px;
  position: absolute;
  right:-16px;
  top:-3px;
}

.resister-section .block input{
  border:none;
  background:none;
  display:block;
  width:100%;
  height:40px;
  border:1px solid #424242;
  background-color: #fff;
  padding:0 16px;
}

.resister-section  .btn-area{
  position: relative;
}

.resister-section  .register-button{
  margin:0 auto 24px;
}

.resister-section p.p3{
  text-align: center;
  line-height:1.3;
  margin-bottom: 20px;
}

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


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

main.password-reset-main{

}

.password-reset-section{
  padding-bottom: 72px;
}

.password-reset-section .block{
  max-width: 430px;
  margin:16px auto 0;
}

.password-reset-section .um-field-block{
  display: none;
}

.password-reset-section .p1{
  display: flex;
  justify-content: center;
  line-height:1.4;
  margin-bottom: 24px;
}

.password-reset-section .title{
  display:inline-block;
  font-size: 18px;
  font-weight: bold;
  position: relative;
  line-height:1;
}

.password-reset-section .title::after{
  content:'*';
  color:#ff0000;
  font-weight: bold;
  font-size: 18px;
  position: absolute;
  right:-16px;
  top:-3px;
}

.password-reset-section .um-field{
  padding-top: 8px;
}

.password-reset-section .um input[type=submit].um-button{
  border:none!important;
  background:none!important;
  width:205px!important;
  height:40px!important;
  border-radius: 40px!important;
  background-color:#f0a473!important;
  display: flex!important;
  justify-content: center!important;
  align-items: center!important;
  font-size: 22px!important;
  font-weight: bold!important;
  line-height:1!important;
  color:#fff!important;
  box-shadow: 3px 3px 3px rgba(0,0,0,0.35)!important;
  cursor: pointer!important;
  padding:0!important;
  padding-top: 3px!important;
  margin:0 auto!important;
}

.password-reset-section .common-cancel-link{
  bottom:-10px;
}

.password-reset-section .send-text{
  display:flex;
  justify-content: center;
  margin-top: 24px;
}


.password-reset-section .new-pass-block{

}

.password-reset-section .new-pass-block label{
  display: none;
}

.password-reset-section .new-pass-block .title-flex{
  /* display: flex;
  justify-content: space-between;
  align-items: center; */
  margin-top: 24px;
}

.password-reset-section .new-pass-block .title-flex p{
  font-size: 18px;
  font-weight: bold;
  line-height:1;
  white-space: nowrap;
}

.password-reset-section .new-pass-block .title-flex span{
  font-size: 14px;
  line-height:1;
  /* white-space: nowrap; */
}


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

body.adress-change-body{

}

main.adress-change-main{

}

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

.adress-change-section .um-cover{
  display:none;
}

.adress-change-section .um-header{
  display:none;
}

.adress-change-section .um-profile-nav{
  display:none;
}

.adress-change-section .um input[type=submit].um-button{
  border:none!important;
  background:none!important;
  width:205px!important;
  height:40px!important;
  border-radius: 40px!important;
  background-color:#f0a473!important;
  display: flex!important;
  justify-content: center!important;
  align-items: center!important;
  font-size: 22px!important;
  font-weight: bold!important;
  line-height:1!important;
  color:#fff!important;
  box-shadow: 3px 3px 3px rgba(0,0,0,0.35)!important;
  cursor: pointer!important;
  padding:0!important;
  padding-top: 3px!important;
  margin:0 auto!important;
}

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

main.contact-main{

}

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

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

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

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

.contact-block .title.must{
  position: relative;
}

.contact-block .title.must::after{
  content:'*';
  font-size:18px;
  font-weight: bold;
  color:#ff0000;
  position: absolute;
  right:-16px;
  top:-4px;
}

.contact-block .radio-area{
  display: flex;
}

.contact-block .radio-area label{
  margin-left: 72px;
  display: flex;
  align-items: center;
  cursor: pointer;
}

.contact-block .radio-area label input{
  width:12px;
  height:12px;
  margin-right: 12px;
}

.contact-block input[type="text"]{
  border:none;
  background:none;
  display: block;
  width:100%;
  height:40px;
  background-color:#fff;
  padding:0 20px;
  border:1px solid #424242;
  font-size: 18px;
  color:rgba(0,0,0,0.6);
}

.contact-block .select-frame{
  position: relative;
}

.contact-block .select-frame::after{
  content:'';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8px 10px 0 10px;
  border-color: #656565 transparent transparent transparent;
  position: absolute;
  top:0;
  bottom:0;
  right:24px;
  margin:auto;
  pointer-events: none;
}

.contact-block .select-frame select{
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  border:none;
  background:none;
  display: block;
  width:100%;
  height:40px;
  background-color:#fff;
  padding:0 20px;
  border:1px solid #424242;
  font-size: 18px;
  color:rgba(0,0,0,0.6);
  cursor:pointer;
}

.contact-block textarea{
  border:none;
  background:none;
  display:block;
  width:100%;
  height:230px;
  background-color:#fff;
  border:1px solid #424242;
  padding:16px;
  color:rgba(0,0,0,0.6);
}

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

.contact-block .flex .left,
.contact-block .flex .right{
  width:420px;
}

.contact-block .flex .left p{
  font-size: 13px;
  margin-top: 4px;
}

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

.contact-block .submit-area{
  display: flex;
  justify-content: center;
  position: relative;
}

.contact-block .submit-area .common-cancel-link{
  bottom:-12px;

}

.contact-block .submit-area .input-cancel-link{
  display: block;
  width:37px;
  height:52px;
  background-image: url('../img/common/cancel.png');
  position: absolute;
  bottom:-12px;
  right:0;
}


/*確認画面*/
.contact-block .mw_wp_form_confirm{

}

.contact-block .mw_wp_form_confirm .radio-area{
  margin-left: 72px;
}

.contact-block .mw_wp_form_confirm .select-frame::after{
  content:none;
}

.contact-block .mw_wp_form_confirm .name-text{
  display: none;
}

.contact-block .mw_wp_form_confirm .submit-area .input-cancel-link{
  display: none;

}

.contact-block .mw_wp_form_confirm .return{
  border: none;
  background: none!important;
  cursor: pointer;
  position: absolute;
  bottom:2px;
  right:0;
  font-size: 18px;
  line-height:1;
  padding:0 6px 6px;
  color:rgba(0,0,0,0.6);
  border-bottom: 1px solid rgba(0,0,0,0.6);
}


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

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 .common-title-flex .en span{
  display: inline-block;
  font-size: 18px;
  font-weight: bold;
  margin-left: 12px;
}


.new-prof-section .new-p1{
  text-align: center;
  color:#82684e;
  font-size: 13px;
  margin-bottom: 32px;
  margin-top: 8px;
}

.new-prof-section .new-p2{
  color:rgba(0,0,0,0.6);
  text-align: center;
  font-size: 14px;
  line-height:1.5;
  margin-bottom: 8px;
}

.new-prof-section .required-block{
  display: flex;
  justify-content: flex-end;
  margin-top: 24px;
}
.new-prof-section .required-block .required1{
  position: relative;
  font-size: 14px;
}
.new-prof-section .required-block .required1::before{
  content:'*';
  font-size: 18px;
  font-weight: bold;
  color:#ff0000;
  position: absolute;
  left:-16px;
  top:0px;
}

.new-prof-section .required-block .required2{
  font-size: 14px;
}

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

.prof-acf-block{

}

.prof-acf-block .acf-fields{
  display: none!important;
}

.prof-acf-block .acf-field{
  display: none!important;
}

.prof-acf-block .acf-label{
  display: none!important;
}

.prof-acf-block [data-name="member_self_introduction"]{
  display: block!important;
}


.prof-acf-block .form-list{
  padding-top: 20px;
  position: relative;
}

.prof-acf-block .form-list::before{
  content:'';
  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{
  /* content:'disclose'; */
  content:'Hide';
  color:#000;
  font-size: 14px;
  position: absolute;
  top:-28px;
  /* left:268px; */
  left:280px;
}

.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:250px;
  text-align: right;
}

.prof-acf-block .form-block .left .title{
  font-size: 18px;
  font-weight: bold;
}

.prof-acf-block .form-block .left .title.must{
  position: relative;
}

.prof-acf-block .form-block .left .title.must::after{
  content:'*';
  font-size: 18px;
  font-weight: bold;
  color:#ff0000;
  position: absolute;
  right:-16px;
  top:-6px;
}

.prof-acf-block .form-block .left .sub{
  font-size: 14px;
}

.prof-acf-block .form-block .center{
  width:90px;
  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:calc(100% - 340px);
}

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

.prof-acf-block .form-block .kind-flex{
  display: flex;
  align-items: center;
  margin-top: -18px;
}

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

.prof-acf-block .form-block .kind-flex label input{
  width:12px;
  height:12px;
  margin-right: 16px;
}

.prof-acf-block .form-block .kind-flex p{
  font-size: 14px;
  font-weight: bold;
  color:#82684e;
}

.prof-acf-block .form-block .timezone-flex{
  display: flex;
}

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


.prof-acf-block .form-block .timezone-flex .timezone1{
  width:280px;
  margin-right: 44px;

}

.prof-acf-block .form-block .timezone-flex .timezone1 p{
  font-size: 14px;
  margin-top: 16px;
  word-wrap: break-word;
}

.prof-acf-block .form-block .timezone-flex .timezone2{
  width:240px;
}

.prof-acf-block .form-block .timezone-flex .timezone2 .timezone-set-frame2{
  min-height:54px;
}

.prof-acf-block .form-block .timezone-flex .timezone2 .year{
  font-size: 18px;
  font-weight: bold;
}

.prof-acf-block .form-block .timezone-flex .timezone2 .time{
  font-size: 18px;
}

.prof-acf-block .form-block .timezone-flex .timezone2 .text{
  font-size: 14px;
  color:#000;
}

.prof-acf-block .form-block .interview-flex{
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 3px;
}

.prof-acf-block .form-block .interview-flex .interview-time-text{
  color:#ff0000;
  font-size: 18px;
  font-weight: bold;
  line-height:1;
}

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

}

.prof-acf-block .form-block .interview-flex .interview-modal-open{
  cursor: pointer;
  display:flex;
  align-items: center;
  justify-content: center;
  height:28px;
  width:115px;
  border-radius:14px;
  background-color: #94866f;
  font-size: 18px;
  color:#fff;
  line-height:1;
  font-weight: bold;
}

.prof-acf-block .interview-modal .tool-p{
  text-align: center;
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 32px;
}

.prof-acf-block .interview-modal .set-tool-list{
  display: flex;
  justify-content: center;
  margin-bottom: 32px;
}

.prof-acf-block .interview-modal .set-tool-list .set-tool-block{
  cursor: pointer;
  display: block;
  position: relative;
  z-index:6;
  margin:0 12px;
}

.prof-acf-block .interview-modal .set-tool-list .icon{
  height:56px;
  width:56px;
  margin-bottom: 6px;
}

.prof-acf-block .interview-modal .set-tool-list .icon.wechat-icon{
  width:70px;
}

.prof-acf-block .interview-modal .set-tool-list p{
  text-align: center;
  line-height:1;
  font-size: 12px;
  margin-bottom: 12px;
}

.prof-acf-block .interview-modal .set-tool-list p.use{
  color:#666666;
  font-weight: bold;
}

.prof-acf-block .interview-modal .set-tool-list input{
  display: block;
  width:12px;
  height:12px;
  margin:0 auto;
  cursor:pointer;
}

.prof-acf-block .form-block .residence-block{
  width:280px;
}

.prof-acf-block .form-block .tel-flex{
  display: flex;
  /* flex-wrap: wrap; */
}

.prof-acf-block .form-block .tel-left{
  width:320px;
}

.prof-acf-block .form-block .tel-right{
  display: flex;
}

.prof-acf-block .form-block .tel-block{
  position: relative;
}

.prof-acf-block .form-block .tel-block p{
  font-size: 14px;
  line-height:1;
  position: absolute;
  left:4px;
  top:-18px;
  white-space:nowrap;
}

.prof-acf-block .form-block .tel-block1{
  margin-bottom: 24px;
  width:100%;
}

.prof-acf-block .form-block .tel-block2{

}

.prof-acf-block .form-block .tel-block3{
  width:80px;
  margin-left: 24px;
}

.prof-acf-block .form-block .tel-block4{
  width:170px;
  margin-left: 24px;
}

.prof-acf-block .form-block .gender-flex{
  display: flex;
  align-items: flex-start;
}

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

.prof-acf-block .form-block .gender-flex label input{
  width:12px;
  height:12px;
  margin-right: 12px;
}

.prof-acf-block .form-block .language-flex{
  display: flex;
}

.prof-acf-block .form-block .language-flex p{
  font-size: 18px;
  margin-left: 12px;
}

.prof-acf-block .form-block .language-flex .language-left{
  width:380px;
  margin-right: 32px;
}

.prof-acf-block .form-block .language-flex .language-right{
  width:210px;
}

.prof-acf-block .form-block .experience-block{
  width:390px;
}

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

}

.prof-acf-block .form-block .tool-flex ul{
  display: flex;
}

.prof-acf-block .form-block .tool-flex ul li{
  margin-right: 64px;
  cursor: pointer;
}

.prof-acf-block .form-block .tool-flex ul li .skype-icon{
  width:57px;
  height:57px;
}
.prof-acf-block .form-block .tool-flex ul li .zoom-icon{
  width:57px;
  height:57px;
}
.prof-acf-block .form-block .tool-flex ul li .voov-icon{
  width:57px;
  height:57px;
}
.prof-acf-block .form-block .tool-flex ul li .wechat-icon{
  width:71px;
  height:57px;
}

.prof-acf-block .form-block .tool-flex ul li p{
  text-align: center;
  font-size: 12px;
  margin-top: 8px;
}

.prof-acf-block .form-block .tool-flex ul li.use p{
  text-align: center;
  font-size: 12px;
  font-weight: bold;
  color:#000;
}

.prof-acf-block  .text-input{
  border:none;
  background:none;
  display: block;
  width:100%;
  height:30px;
  border:1px solid #424242;
  padding:0 12px;
  background-color:#fff;
}

.prof-acf-block  .select-frame{
  position: relative;
}

.prof-acf-block  .select-frame::after{
  content:'';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8px 10px 0 10px;
  border-color: #656565 transparent transparent transparent;
  position: absolute;
  top:0;
  bottom:0;
  right:12px;
  margin:auto;
  pointer-events: none;
}

.prof-acf-block  .select-frame select{
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  border:none;
  background:none;
  display: block;
  width:100%;
  height:30px;
  background-color:#fff;
  padding-left: 20px;
  padding-right: 40px;

  border:1px solid #424242;
  font-size: 18px;
  color:rgba(0,0,0,0.6);
  cursor:pointer;
}

.prof-acf-block .border{
  height:1px;
  background-color:#94866f;
  margin:28px 0;
}

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

.prof-acf-block .media-flex .title-block{
  width:145px;
  height:28px;
  border-radius:14px;
  margin:0 auto;
  background-color:#94866f;
  display: flex;
  justify-content:center;
  align-items: center;
  font-size: 18px;
  color:#fff;
  font-weight: bold;
  line-height:1;
}

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

.prof-acf-block .media-left label{
  cursor:pointer;
}

.prof-acf-block .media-left .up-name{
  margin-top: 20px;
  margin-bottom: 20px;
  font-size: 14px;
}

.prof-acf-block .media-left .move-thumb{
  position: relative;
}

.prof-acf-block .media-left .move-thumb .thumb-delete{
  position: absolute;
  top:-20px;
  right:-20px;
  cursor: pointer;
  font-size: 18px;
}


.prof-acf-block .media-left .move-thumb .frame{
  cursor: pointer;
  display: block;
  width:100%;
  height:250px;
}

.prof-acf-block .media-left img{
  width:100%;
  height:100%;
  object-fit: cover;
}

.prof-acf-block .media-right{
  width:390px;
}

.prof-acf-block .media-right .text1{
  color:#000;
  font-size: 14px;
  line-height:1.5;
  margin:36px 0 12px;
}

.prof-acf-block .media-right .text2{
  color:#000;
  font-size: 14px;
  line-height:1.5;
  margin-bottom: 32px;
  word-wrap: break-word;
}

.prof-acf-block .introduction-area{
  max-width:830px;
  margin:0 auto 24px;
}

.prof-acf-block .introduction-area .title{
  display: flex;
  align-items: center;
  margin-bottom: 16px;
  font-size: 18px;
  font-weight: bold;
  line-height:1;
}

.prof-acf-block .introduction-area .title span{
  margin-left: 28px;
  font-size: 14px;
  font-weight: normal;
}

.prof-acf-block .introduction-area textarea{
  border:none;
  background:none;
  display: block;
  width:100%;
  height:215px;
  margin-bottom: 6px;
  border:1px solid #424242;
  padding:16px;
  background-color:#fff;
}

.prof-acf-block .privacy-area{
  margin-bottom: 32px;
}

.prof-acf-block .privacy-area .sub{
  text-align: center;
  color:#82684e;
  font-size: 14px;
  margin-bottom: 20px;
}

.prof-acf-block .privacy-area .privacy-box{
  height:540px;
  overflow-y:scroll;
  border:1px solid #424242;
  padding:24px;
  background-color:#fff;
  margin-bottom: 32px;
}

.prof-acf-block .privacy-area .privacy-box .anchor-frame{
  position: relative;

}

.prof-acf-block .privacy-area .privacy-box .anchor-frame .privacy-anchor{
  position: absolute;
  text-decoration: underline;
  cursor: pointer;
  margin: 0 auto;
  font-size: 14px;
  color:#000;
}


.prof-acf-block .privacy-area .privacy-box p{
  line-height:2;
  color:#000;
  word-wrap: break-word;
  margin-bottom: 32px;
}

.prof-acf-block .privacy-area .privacy-box p.rule-title{
  text-align: center;
  margin-top: 48px;
  margin-bottom: 32px;
}

.prof-acf-block .privacy-area label{
  display: flex;
  align-items: center;
  font-size: 18px;
  color:rgba(0,0,0,0.6);
  cursor: pointer;
}

.prof-acf-block .privacy-area label input{
  width:16px;
  height:16px;
  margin-right: 40px;
}

.prof-acf-block .acf-form-submit{
  display: none!important;
  pointer-events: none;
}

.prof-acf-block .register-text{
  text-align: center;
  color:#808080;
  font-size: 18px;
  margin-top: 10px;
}

.prof-acf-block .prof-acf-submit{

}

.prof-acf-block .prof-acf-submit.rock{
  /* opacity: 0.5;
  pointer-events: none;
  cursor: not-allowed; */
}

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

body.prof-edit-body{

}

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

main.prof-edit-main{
  overflow: hidden;
}

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

.prof-edit-section .common-title-flex .en span{
  display: inline-block;
  font-size: 18px;
  font-weight: bold;
  margin-left: 12px;
}


.prof-edit-section .p1{
  text-align: center;
  color:#82684e;
  font-size: 13px;
  margin-bottom: 32px;
  margin-top: 8px;
}

.prof-edit-section .p2{
  color:rgba(0,0,0,0.6);
  text-align: center;
  font-size: 14px;
  line-height:1.5;
  margin-bottom: 8px;
}

.prof-edit-section .required-block{
  display: flex;
  justify-content: flex-end;
  margin-top: 24px;
}
.prof-edit-section .required-block .required1{
  position: relative;
  font-size: 14px;
}
.prof-edit-section .required-block .required1::before{
  content:'*';
  font-size: 18px;
  font-weight: bold;
  color:#ff0000;
  position: absolute;
  left:-16px;
  top:0px;
}

.prof-edit-section .required-block .required2{
  font-size: 14px;
}

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

.prof-edit-section .link-flex p{
  width:calc(100% - 140px);
}

.prof-edit-section .link-flex a{
  width:115px;
  height:28px;
  border-radius:14px;
  background-color: #94866f;
  display: flex;
  justify-content:center;
  align-items: center;
  font-weight: bold;
  color:#fff;
  line-height:1;
}

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

.prof-edit-section .rule-block{
  width:490px;
  height:36px;
  border-radius: 18px;
  background-color:#828282;
  margin:24px auto 12px;
  font-size: 18px;
  color:#fff;
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: center;
}

.prof-edit-section .pay-area{
  position: relative;
  padding:40px 0;
  margin-bottom: 56px;
}

.prof-edit-section .pay-area::before{
  content:"";
  width:100vw;
  height:100%;
  background-color:#fff;
  position: absolute;
  z-index:-5;
  top:0;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}

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

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

.prof-edit-section .pay-area .label-flex label{
  display: flex;
  align-items: center;
  font-size: 18px;
  font-weight: bold;
  line-height:1;
  cursor: pointer;
}

.prof-edit-section .pay-area .label-flex label input{
  width:12px;
  height:12px;
  margin-right: 24px;
}

.prof-edit-section .pay-area .label-flex p{
  font-size: 14px;
  color:#000;
  margin-left: 40px;
}

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

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

.prof-edit-section .pay-area .pay-block .left .en{
  font-size: 18px;
  font-weight: bold;
}

.prof-edit-section .pay-area .pay-block .left .ja{
  font-size: 14px;
}

.prof-edit-section .pay-area .pay-block .center{
  width:64px;
  display: flex;
  justify-content: center;
  font-size: 14px;
  padding-top: 4px;
}

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

.prof-edit-section .pay-area .pay-block .right p{
  padding-left: 20px;
  padding-top: 12px;
  font-size: 14px;
  line-height:1;
}

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

.prof-edit-section .retire-link{
  display: block;
  position: absolute;
  left:0;
  bottom:10px;
  cursor: pointer;
}

.prof-edit-section .retire-link .radi{
  /* width:115px; */
  padding:0 16px;
  height:28px;
  border-radius:14px;
  background-color: #94866f;
  display: flex;
  justify-content:center;
  align-items: center;
  font-weight: bold;
  color:#fff;
  line-height:1;

}

.prof-edit-section .retire-link p{
  text-align: center;
  color:#666666;
  font-size: 13px;
  margin-top: 6px;
}




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

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 .day-flex{
  display: flex;
  justify-content:center;
  align-items: center;
  margin-bottom: 32px;
}

.time-block-area .day-flex p{
  font-size: 20px;
  font-weight: bold;
  color:#697c85;
  margin:0 56px;
}

.time-block-area .day-flex img{
  width:23px;
}

.time-block-area .set-time-list{
  display: flex;
  flex-wrap: wrap;
  border:2px solid #808080;
  margin-bottom: 48px;
}

.time-block-area .hour-block{
  width:16.66%;
  position: relative;
  aspect-ratio: 1 / 1;
  border-right: 1px solid #b2b2b2;
  border-bottom: 2px solid #808080;
  display: flex;
  flex-direction: column;
  cursor: pointer;
}

.time-block-area .hour-block .hour{
  position: absolute;
  color:#808080;
  font-size: 28px;
  line-height:1;
  font-weight: bold;
  top:4px;
  left:6px;
}

.time-block-area .hour-block:nth-child(6n){
  border-right:none;
}

.time-block-area .hour-block:nth-child(n + 19){
  border-bottom: none;
}

.time-block-area .minutes{
  width:100%;
  height:50%;
  background-color:#fff;
}

.time-block-area .minutes.midnight.on{
  background-color:#b8def5;
}
.time-block-area .minutes.morning.on{
  background-color:#e8d388;
}
.time-block-area .minutes.evening.on{
  background-color:#c4baf2;
}
.time-block-area .minutes.night.on{
  background-color:#cccccc;
}

.time-block-area .minutes.offered{
  background-color:#ffe0e0!important;
}

.time-block-area .minutes.my-offer{
  background-color:#ffe0e0!important;
}

.time-block-area .minutes.add-my-offer{
  background-color:#ffe0e0!important;
}
.time-block-area .minutes.reserved,
.time-block-area .minutes.offered.reserved,
.time-block-area .minutes.add-my-offer.reserved,
.time-block-area .minutes.my-offer.reserved{
  background-color:#ff0000!important;
}

.time-block-area .hour-block .minutes input{
  display: none;
}

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

.schedule-set-detail-section .repeat-model-open{
  cursor: pointer;
  width:165px;
  height:32px;
  border-radius:16px;
  background-color: #a3aeb3;
  display: flex;
  justify-content:center;
  align-items: center;
  color:#ffffff;
  font-weight: bold;
  line-height:1;
}

.schedule-set-detail-section .time-set-clear{
  cursor: pointer;
}

.schedule-set-detail-section .time-set-clear img{
  width:29px;
}

.schedule-set-detail-section .common-orange-button{
  width:135px;
  margin:0 auto;
}

.schedule-set-detail-section .common-cancel-link{
  right:19px;
  bottom:-10px;
}


.repeat-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;
  color:#697c85;

}

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

.repeat-modal .frame{
  width:710px;
  max-height: 80vh;
  overflow-y: scroll;
  /* height:570px; */
  background-color:rgba(255,255,255,0.85);
  box-shadow:20px 20px 20px rgba(0,0,0,0.35);
  padding:40px 16px;
  position: relative;
}

.repeat-modal .common-title-flex{
  margin-bottom: 56px;
  margin-left: 20px;
}

.repeat-modal .common-title-flex .en{
  font-size: 28px;
}

.repeat-modal .contents{
  max-width:450px;
  margin:0 auto;
  position: relative;
}

.repeat-modal .common-orange-button{
  margin:0 auto;
  width:135px;
}

.repeat-modal .common-cancel-link{
  cursor: pointer;
  right:0;
}

.repeat-modal .block{
  margin-bottom: 40px;
}

.repeat-modal p.p1{
  font-size: 24px;
  color: #697c85;
  padding-left: 40px;
  margin-bottom: 16px;
  position: relative;
}

.repeat-modal p.p3{
  margin-top: -8px;
  margin-bottom: 16px;
}

.repeat-modal p.p1::before{
  content:'';
  width:20px;
  height:20px;
  border-radius: 50%;
  background-color: #697c85;
  position: absolute;
  left: 0%;
  top:0;
  top:6px;
  /* top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%); */
}

.repeat-modal p.p2{
  display: flex;
  justify-content: center;
  color: #697c85;
  font-size: 18px;
  margin-bottom: 24px;
}

.repeat-modal .period-flex{
  display: flex;
  align-items: center;
  justify-content:flex-end;
}

.repeat-modal .period-flex .period-box{
  width:185px;
  height:40px;
  position: relative;
}

.repeat-modal .period-flex .period-box::after {
  content: '';
  width:28px;
  height:24px;
  background-image: url('../img/common/calendar-icon.png');
  left:160px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.repeat-modal .period-flex .period-box .input-frame{
  position: absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  z-index:3;
}

.repeat-modal .period-box .period_input{
  text-indent: -9999em;
  display: block;
  width:100%;
  height:100%;
  border:none!important;
  background:none!important;
  appearance:none;
  -webkit-appearance:none;
  opacity:0;
  cursor:pointer;
  /* position: relative; */
  /* z-index:2; */
}

.repeat-modal .period-box .period_input::-webkit-calendar-picker-indicator {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: auto;
  height: auto;
  background: transparent;
  z-index: 1;
}

/* .repeat-modal .period-box .period_input::after {
  content: '';
  width:28px;
  height:24px;
  background-image: url('../img/common/calendar-icon.png');
  left:160px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
} */

.repeat-modal .period-flex .wave{
  color:#656565;
  font-size: 18px;
  font-weight: bold;
  line-height:1;
  margin:0 12px;
}

.repeat-modal .period-text-box{
  width:150px;
  height:40px;
  border:1px solid #000000;
  background:#fff;
  color:#656565;
  font-size: 18px;
  line-height:1;
  display:flex;
  justify-content:center;
  align-items:center;
  pointer-events: none;
  position: absolute;
  top:0;
  left:0;
  z-index:1;
}

.repeat-modal ul{
  display:flex;
  justify-content:space-between;
  margin-bottom: 16px;
}

.repeat-modal ul li{
  cursor: pointer;
  width:54px;
  height:40px;
  border-radius: 20px;
  display: flex;
  align-items: center;
  justify-content:center;
  background-color:rgba(166,166,166,0.6);
  font-weight: bold;
  color:#fff;
  line-height:1;
}

.repeat-modal ul li.on{
  color:#808080;
  background-color:#c4baf2;
  border:1px solid rgba(166,166,166,0.6);
}

.repeat-modal ul li input{
  display: none;
}

.repeat-modal .time-set-list{
  padding-left: 32px;
  position: relative;
}

.repeat-modal .time-set-line{
  margin-bottom: 10px;
  display: flex;
  align-items: center;
}

.repeat-modal .time-set-line:last-child{
  margin-bottom: 0;
}

.repeat-modal .time-set-line p{
  font-size: 18px;
  color:#656565;
  margin-right: 32px;
}

.repeat-modal .time-set-line .select-frame{
  position: relative;
  width:120px;
}

.repeat-modal .time-set-line .select-frame::after{
  content:'';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8px 10px 0 10px;
  border-color: #656565 transparent transparent transparent;
  position: absolute;
  top:0;
  bottom:0;
  right:16px;
  margin:auto;
  pointer-events: none;
}

.repeat-modal .time-set-line .select-frame select{
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  border:none;
  background:none;
  display: block;
  width:100%;
  height:40px;
  text-align: left;
  background-color:#fff;
  padding-left: 16px;
  border:1px solid #424242;
  font-size: 18px;
  color:#697c85;
  cursor:pointer;
}

.repeat-modal .time-set-line .wave{
  color:#656565;
  font-size: 18px;
  font-weight: bold;
  line-height:1;
  margin:0 12px;
}

.repeat-modal .repeat-set-clear{
  cursor:pointer;
  width:28px;
  position: absolute;
  right:5px;
  bottom:-4px;
}

.repeat-modal .repeat-set-clear img{
  width:100%;
}


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

main.lesson-edit-main{

}

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

.lesson-edit-section .required-not-complete{
  color:#ff0000;
  text-align: center;
  margin-bottom: 16px;
}

.lesson-edit-section p.p1{
  text-align: center;
  color:#82684e;
  text-align: center;
  font-size: 13px;
}

.lesson-acf-block{
  margin-top: 20px;
}

.lesson-acf-block .flex{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: 48px;
}

.lesson-acf-block .flex .left,
.lesson-acf-block .flex .right{
  width:440px;
}

.lesson-acf-block .img-flex{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: 16px;
}

.lesson-acf-block .img-flex .left,
.lesson-acf-block .img-flex .right{
  width:440px;
}

.lesson-acf-block .form-block{
  margin-bottom: 24px;
}

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

.lesson-acf-block .title-flex{
  display: flex;
  margin-bottom: 10px;
}

.lesson-acf-block .title-flex .title{
  font-size: 18px;
  line-height:1;
  font-weight: bold;
  position: relative;
}

.lesson-acf-block .title-flex .title.must::after{
  content:'*';
  font-size:18px;
  font-weight: bold;
  color:#ff0000;
  position: absolute;
  right:-16px;
  top:-4px;
}

.lesson-acf-block .title-flex .sub{
  font-size: 14px;
  margin-left: 36px;
}


.lesson-acf-block .acf-fields{
  display: none!important;
}

.lesson-acf-block .acf-field{
  display: none!important;
}

.lesson-acf-block .acf-form-submit{
  display: none!important;
}

.lesson-acf-block .acf-label{
  display: none!important;
}

.lesson-acf-block .text-input{
  border:none;
  background:none;
  display: block;
  width:100%;
  height:40px;
  border:1px solid #424242;
  padding:0 12px;
  background-color:#fff;
  color:rgba(0,0,0,0.6);
  font-size: 18px;
}


.lesson-acf-block .select-frame{
  position: relative;
}

.lesson-acf-block .select-frame::after{
  content:'';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8px 10px 0 10px;
  border-color: #656565 transparent transparent transparent;
  position: absolute;
  top:0;
  bottom:0;
  right:24px;
  margin:auto;
  pointer-events: none;
}

.lesson-acf-block .select-frame select{
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  border:none;
  background:none;
  display: block;
  width:100%;
  height:40px;
  background-color:#fff;
  padding:0 20px;
  border:1px solid #424242;
  font-size: 18px;
  font-weight: normal;
  color:rgba(0,0,0,0.6);
  cursor:pointer;
}

.lesson-acf-block ul.target-list{
  margin-top: 24px;
  margin-bottom: 40px;
}

.lesson-acf-block ul.target-list li{
  display: flex;
  align-items: center;
  margin-bottom: 10px;
}

.lesson-acf-block ul.target-list .icon{
  width:20px;
  height:20px;
  border-radius: 50%;
  display:flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  font-weight: bold;
  line-height:1;
  letter-spacing:0;
  color:#666666;
  box-shadow: 1px 1px 1px rgba(0,0,0,0.35);
  margin-right: 32px;
  padding-top: 2px;
}

.lesson-acf-block ul.target-list .icon-a{
  background-color:#dcf2d3;
}
.lesson-acf-block ul.target-list .icon-b{
  background-color:#e4d4ff;
}
.lesson-acf-block ul.target-list .icon-c{
  background-color:#d5e6f2;
}
.lesson-acf-block ul.target-list .icon-d{
  background-color:#f1fada;
}
.lesson-acf-block ul.target-list .icon-e{
  background-color:#f0a473;
  color:#fff;
}

.lesson-acf-block ul.target-list .label-area{
  display:flex;
  align-items:center;
  padding-top: 2px;
}

.lesson-acf-block ul.target-list input{
  width:13px;
  height:13px;
  margin-right: 24px;
}

.lesson-acf-block ul.target-list label{
  display: flex;
  align-items: center;
  cursor: pointer;
  margin-top: 4px;
}

.lesson-acf-block ul.target-list label span{
  font-size: 18px;
  font-weight: bold;
  line-height:1;
  color:#666666;
  white-space: nowrap;
}

.lesson-acf-block ul.target-list label .span1{
  width:105px;
}

.lesson-acf-block .price-flex{
  display: flex;
  align-items: center;
  margin-bottom: 16px;
}

.lesson-acf-block .price-flex .price-box{
  width:110px;
  position: relative;
}

.lesson-acf-block .price-flex .price-box p{
  position: absolute;
  font-size: 14px;
  font-weight: bold;
  line-height:1;
  bottom:2px;
  left:120px;
}

.lesson-acf-block .price-flex .center{
  font-size: 28px;
  font-weight: bold;
  line-height:1;
  margin:0 40px;
}


.lesson-acf-block .fee-flex{
  display: flex;
  align-items: center;
  margin-bottom: 20px;
}

.lesson-acf-block .system-fee{
  min-width:110px;
  text-align: right;
  font-size: 18px;
  line-height:1;
  margin-right: 10px;
}

.lesson-acf-block .fee-flex p{
  line-height:1;
}

.lesson-acf-block .fee-flex p span{
  font-weight: bold;
  display: inline-block;
  font-size: 14px;
  margin-right: 12px;
}

.lesson-acf-block .system-text{
  color:#ff6565;
  line-height:1.75;
}

.lesson-acf-block .tool-flex{
  display: flex;
  justify-content:space-between;
}

.lesson-acf-block .tool-flex li{
  cursor: pointer;
}

.lesson-acf-block .tool-flex li .skype-icon{
  width:57px;
  height:57px;
}
.lesson-acf-block .tool-flex li .zoom-icon{
  width:57px;
  height:57px;
}
.lesson-acf-block .tool-flex li .voov-icon{
  width:57px;
  height:57px;
}
.lesson-acf-block .tool-flex li .wechat-icon{
  width:71px;
  height:57px;
}

.lesson-acf-block .tool-flex li p{
  text-align: center;
  font-size: 12px;
  margin-top: 8px;
}

.lesson-acf-block .tool-flex li.use p{
  text-align: center;
  font-size: 12px;
  font-weight: bold;
  color:#000;
}

.lesson-acf-block .features-flex{
  display: flex;
  justify-content:space-between;
}

.lesson-acf-block .features-flex li{
  cursor: pointer;
}

.lesson-acf-block .features-flex li .features-icon{
  width:68px;
  height:68px;
  border-radius: 50%;
  margin-bottom: 10px;

}

.lesson-acf-block .features-flex li p{
  text-align: center;
  font-size: 12px;
  margin-top: 8px;
}

.lesson-acf-block .features-flex li.use p{
  font-weight: bold;
}

.lesson-acf-block .features-flex li.use p.talk{
  color:#51c332;
}
.lesson-acf-block .features-flex li.use p.grammar{
  color:#666666;
}
.lesson-acf-block .features-flex li.use p.write{
  color:#f0a473;
}
.lesson-acf-block .features-flex li.use p.reading{
  color:#88a9e3;
}
.lesson-acf-block .features-flex li.use p.ristning{
  color:#b78bd5;
}

.lesson-acf-block [data-name="lesson_caption"].acf-field,
.lesson-acf-block [data-name="lesson_text1"].acf-field,
.lesson-acf-block [data-name="lesson_text2"].acf-field,
.lesson-acf-block [data-name="lesson_text3"].acf-field,
.lesson-acf-block [data-name="lesson_text4"].acf-field{
  display: block!important;
}

/* .lesson-acf-block .editor-frame textarea{
  display: block!important;
  margin-top: 24px;
} */

.lesson-acf-block .upload-block{
  margin-bottom: 56px;
}

.lesson-acf-block .upload-block .img-title{
  cursor: pointer;
  display: flex;
  justify-content: center;
  width:145px;
  height:30px;
  border-radius: 15px;
  background-color:#94866f;
  font-size: 18px;
  color:#fff;
  font-weight: bold;
  padding-top: 2px;
  margin:0 auto 20px;
}

.lesson-acf-block .upload-block .up-name{
  display: flex;
  justify-content: center;
  font-size: 14px;
  height:40px;
  /* margin-bottom: 16px; */
}

.lesson-acf-block .upload-block .move-thumb{
  position: relative;
  margin-bottom: 32px;
}

.lesson-acf-block .upload-block .move-thumb .thumb-delete{
  position: absolute;
  top:-20px;
  right:-20px;
  cursor: pointer;
  font-size: 18px;
}

.lesson-acf-block .upload-block .move-thumb .frame{
  cursor: pointer;
  display: block;
  width:100%;
  height:250px;
}

.lesson-acf-block .upload-block .move-thumb .frame img{
  width:100%;
  height:100%;
  object-fit: cover;
}

.lesson-acf-block .upload-block textarea{
  border:none;
  background:none;
  display: block;
  width:100%;
  height:165px;
  margin-bottom: 6px;
  border:1px solid #424242;
  padding:16px;
  background-color:#fff;
}

.lesson-acf-block .lesson-acf-submit.num-rock{
  pointer-events: none;
  opacity: 0.4;
}

.lesson-acf-block .lesson-acf-submit.required-rock{
  pointer-events: none;
  opacity: 0.4;
}

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

main.single-lesson-main{

}

.single-lesson-section {
  padding-top: 12px;
  padding-bottom: 72px;
  overflow:hidden;
}

.single-lesson-section .btn-frame{
  margin-top: 32px;
  position: relative;
  display: flex;
  justify-content: center;
}

.single-lesson-section .btn-frame .ja{
  position: absolute;
  color:#82684e;
  font-size: 14px;
  font-weight: normal;
  line-height:1;
  left:calc(50% + 124px);
  bottom:6px;
}

.single-lesson-section .area1{
  margin-top: 40px;
  position: relative;
  padding:24px 0 32px;
  margin-bottom: 40px;
}

.single-lesson-section .area1::before{
  content:'';
  width:100vw;
  height:100%;
  background-color: #fff;
  position: absolute;
  top:0;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  z-index:-3;
}

.single-lesson-section .area2{

}

.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:430px;
}

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

.single-lesson-section .area2 .img-flex .text-area{
  width:440px;
}

.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;
}

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

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

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

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 .name-flex{
  display: flex;
  margin-top: 36px;
  margin-bottom: 24px;
  padding-left: 32px;
}

.single-member-section1 .name-flex .icon{
  width:34px;
  margin-right: 12px;
}

.single-member-section1 .name-flex .icon img{
  width:100%;
}

.single-member-section1 .name-flex .evaluation {
  /* margin-right: 44px; */
  margin-top: 10px;
  width: 85px;
  padding-left: 26px;
  color: #e69e35;
  font-weight: bold;
  line-height: 1;
  position: relative;
}

.single-member-section1 .name-flex .evaluation::before {
  content: "";
  width: 22px;
  height: 21px;
  background-image: url(../img/common/star.png);
  position: absolute;
  left: 0;
  top: -4px;
}

.single-member-section1 .name-flex .name{
  font-size: 26px;
  font-weight: bold;
  color:#705f42;
  max-width:calc(100% - 126px);
  margin-top: -3px;
}

.single-member-section1 .flex{
  display: flex;
  /* justify-content: space-between; */
  justify-content: center;
  flex-wrap: wrap;
}

.single-member-section1 .flex .info-area{
  width:440px;
  margin-right: 48px;
}

.single-member-section1 .min-flex{
  display: flex;
  justify-content: space-between;
  margin-bottom: 32px;
}

.single-member-section1 .thumb{
  width:215px;
  height:215px;
  border-radius:50%;
  box-shadow: 3px 3px 3px rgba(0,0,0,0.35);
  position: relative;
}

.single-member-section1 .thumb img.pic{
  width:100%;
  height:100%;
  border-radius:50%;
  object-fit: cover;
}

.single-member-section1 .country-area{
  width:200px;
}


.single-member-section1 .country-area .country-list{
  display:flex;
  position: relative;
  width:100%;
  /* min-height:42px; */
  margin-bottom: 24px;
}

.single-member-section1 .country-area .country-list .country{
  width:30px;
  /* aspect-ratio: 1 / 1; */
  margin-right: 32px;
}

.single-member-section1 .country-area .country-list .country-icon-frame{
  width:100%;
  aspect-ratio: 1 / 1;
  /* height:100%; */
  position: relative;
  overflow: hidden;
  box-shadow: 0.7px 0.7px 0.7px rgb(0 0 0 / 35%);
}

.single-member-section1 .country-area .country-list .country-icon-frame img{
  display:block;
  position: absolute;
  width:150%!important;
  height:150%!important;
  object-fit: cover;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}



.single-member-section1 .country-area .language-line{
  position: absolute;
  right:0;
  bottom:4px;
  display:flex;
  /* justify-content: flex-end; */
}

.single-member-section1 .country-area .language-line .language{
  width:30px;
}

.single-member-section1 .country-area .language-line .language-icon-frame{
  width:100%;
  aspect-ratio: 1 / 1;
  /* height:100%; */
  position: relative;
  overflow: hidden;
  box-shadow: 0.7px 0.7px 0.7px rgb(0 0 0 / 35%);
  border-radius: 50%;
}

.single-member-section1 .country-area .language-line .language-icon-frame img{
  display:block;
  position: absolute;
  width:150%!important;
  height:150%!important;
  object-fit: cover;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}

.single-member-section1 .country-area .language-line .language0{
  margin-right: 6px;
}
.single-member-section1 .country-area .language-line .language2{
  margin-left: -8px;
}

.single-member-section1 .country-area .language-line img{
  width:100%;
}

.single-member-section1 .language-list{
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}

.single-member-section1 .language-list .language-block{
  width:190px;
  margin-bottom: 6px;
}

.single-member-section1 .language-list .country-birth{
  margin-bottom: 20px;
}

.single-member-section1 .language-list .language-block:last-child{
  margin-bottom:0;
}

.single-member-section1 .language-block .language{
  font-weight: bold;
  color:#82684e;
  padding-left: 4px;
}

.single-member-section1 .language-block .border{
  height:1px;
  background-color: #82684e;
}
.single-member-section1 .language-block .level{
  text-align: right;
  color:#82684e;
  padding-right: 4px;
}

.single-member-section1 .btn-area{
  width:200px;
  display:flex;
  justify-content: center;
}

.single-member-section1 .btn-area .message-link{
  width:148px;
  height:30px;
  border-radius: 15px;
  background-color:#f0a473;
  display:flex;
  align-items: center;
  justify-content: center;
  font-weight: bold;
  color:#fff;
  line-height:1;
  box-shadow: 3px 3px 3px rgba(0,0,0,0.35);
}

.single-member-section1 .list-area{
  width:calc(100% - 200px);
  /* margin-top: -4px; */
}

.single-member-section1 .list-area ul{
  display:flex;
  align-items: center;
  justify-content: flex-end;
}

.single-member-section1 .list-area ul li.tool-icon{
  width:40px;
  height:40px;
  margin-left: 6px;
}

.single-member-section1 .list-area ul li.wechat-icon{
  width:40px;
  height:30px;
}

.single-member-section1 .list-area ul li.features-icon{
  width:32px;
  height:32px;
  margin-left: 10px;
}

.single-member-section1 .total-block{
  width:200px;
}

.single-member-section1 .total-block .text{
  font-size: 18px;
  padding-right: 8px;
  text-align: right;
}

.single-member-section1 .total-block .border{
  height:1px;
  background-color: #666666;
}

.single-member-section1 .total-block .count{
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-right: 8px;
  font-size: 18px;
}

.single-member-section1 .total-block .count span{
  font-size: 18px;
  font-weight: bold;
  line-height:1;
}


.single-member-section1 .introduction{
  width:420px;
}

.single-member-section1 .introduction p{
  line-height:2;
}

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

.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: 56px;
}

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

.single-member-section3 .common-calendar{
  margin-top: 36px;
}


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

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

.single-member-section4 .comment-block{
  display: flex;
  margin-bottom: 28px;
  display: flex;
}

.single-member-section4 .comment-block .time{
  width:160px;
  color:#656565;
  font-size: 18px;
}

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

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

body.search-teacher-body{

}
main.search-teacher-main{

}

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

.search-teacher-section1 .common-teacher-search-area{
  margin-top: 36px;
}

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

.search-teacher-section2{

}

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

.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;

}

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

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

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

.search-lesson-section1 .search-block p{
  color:#bababa;
  font-size: 18px;
  font-weight: bold;
  line-height:1;
  margin-bottom: 3px;
  padding-left: 24px;
}

.search-lesson-section1 .search-block .select-frame{
  position: relative;
}

.search-lesson-section1 .search-block .select-frame::after{
  content:'';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8px 10px 0 10px;
  border-color: #4b3825 transparent transparent transparent;
  position: absolute;
  top:0;
  bottom:0;
  right:24px;
  margin:auto;
  pointer-events: none;
}

.search-lesson-section1 .search-block .select-frame select{
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  border:none;
  background:none;
  display: block;
  width:100%;
  height:40px;
  border-radius:20px;
  background-color:#fff;
  padding:0 24px;
  border:1px solid #424242;
  font-size: 20px;
  font-weight: bold;
  color:#94866f;
  cursor:pointer;
}

.search-lesson-section1 .search-block .text-input{
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  border:none;
  background:none;
  display: block;
  width:100%;
  height:40px;
  padding:0 24px;
  border:1px solid #424242;
  font-size: 20px;
  font-weight: bold;
  color:#94866f;
  background-color:#fff;
}

.search-lesson-section1 .search-button{
  width:150px;
  margin:24px auto 0;
}

.search-lesson-section2{
  overflow: hidden;
}

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

.search-lesson-section2 .white-area{
  padding:40px 0 64px;
  position: relative;
}

.search-lesson-section2 .white-area::before{
  content:"";
  width:100vw;
  height:100%;
  background-color:#fff;
  position:absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  z-index:-3;
}


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

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-wrap: wrap;
}

.send-message-section .block{
  margin-bottom: 32px;
  position: relative;
}

.send-message-section .label-block{
  width:480px;
  display: flex;
  align-items: center;
}

.send-message-section label{
  display:flex;
  align-items: center;
  cursor:pointer;
  color:#665b4c;
  font-size: 20px;
  font-weight: bold;
  line-height:1;
  margin-left: 0px;
  /* position: absolute;
  right:0;
  top:0; */
}

.send-message-section label input{
  width:14px;
  height:14px;
  margin-right: 24px;
  cursor:pointer;
}

.send-message-section .block1{
  width:420px;
}

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

.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 .title span{
  font-size: 14px;
  margin-left: 32px;
  font-weight: normal;
}

.send-message-section .block .to-name{
  font-size: 20px;
  font-weight: bold;
  background-color:#fff;
  padding:3px 12px;
  border:2px solid #424242;
  background-color:#fff;
  min-height:40px;
  /* color:#665b4c; */
  padding-right: 4px;
}

.send-message-section .block .to-name.text-hide{
  text-indent: -9999em;
}

.send-message-section .block .select-frame{
  position: relative;
}

.send-message-section .block .select-frame::after{
  content:'';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8px 10px 0 10px;
  border-color: #656565 transparent transparent transparent;
  position: absolute;
  top:0;
  bottom:0;
  right:24px;
  margin:auto;
  pointer-events: none;
}

.send-message-section .block .select-frame select{
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  border:none;
  background:none;
  display: block;
  width:100%;
  height:40px;
  background-color:#fff;
  padding:0 24px;
  border:2px solid #424242;
  font-size: 18px;
  color:#656565;
  cursor:pointer;
}

.send-message-section .block .text-input{
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  border:none;
  background:none;
  display: block;
  width:100%;
  height:40px;
  padding:0 24px;
  border:2px solid #424242;
  font-size: 18px;
  color:#656565;
  background-color:#fff;
}

.send-message-section .block textarea{
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  border:none;
  background:none;
  display: block;
  width:100%;
  height:230px;
  padding:12px;
  border:2px solid #424242;
  font-size: 18px;
  color:#656565;
  background-color:#fff;
}

.send-message-section .send-button{
  margin:0 auto;
}

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

.send-message-section .err-text{
  color:#ff0000!important;
  width:100%;
  margin-top: 6px;
}

.send-message-section .complete-text{
  display:flex;
  justify-content:center;
  margin-top:24px;
  font-size:18px;
  font-weight: bold;
}

.send-message-section .flex2{
  display:flex;
  align-items:center;
  flex-wrap: wrap;
  margin-bottom: 24px;
}

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

.send-message-section .flex2 input{
  border:none;
  background:none;
  display: block;
  width:420px;
  height:40px;
  background-color:#fff;
  padding:0 16px;
  border:2px solid #424242;
  font-size: 18px;
  color:#656565;
  margin-right: 56px;
}

.send-message-section .flex2 p{
  font-size: 18px;
  color:#656565;
  line-height:1;
}

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

body.message-list-body{

}
main.message-list-main{

}

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

.message-list-section .send-line{
  display: flex;
  justify-content: flex-end;
  margin-top: 24px;
  margin-bottom: 48px;
}

.message-list-section .send-line a{
  display: flex;
  justify-content: center;
  align-items: center;
  background-color:#685a4b;
  border-radius: 6px;
  width:160px;
  height:24px;
  color:#fff;
  font-size: 12px;
  font-weight: bold;
  line-height:1;
  padding-top: 3px;
}

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

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

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

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

.message-list-section .search-flex .p3{
  color:#685a4b;
  margin-left: 12px;
  margin-right: 16px;
}

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

.message-list-section .search-flex .date-frame::after{
  content:"";
  width:18px;
  height:16px;
  background-image: url('../img/common/calendar-icon2.png');
  position: absolute;
  top:0;
  bottom:0;
  right:6px;
  margin:auto;
  pointer-events:none;
  z-index:5;
}

.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;
}

.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;
}

.message-list-section .search-flex  .select-frame{
  position: relative;
}


.message-list-section .search-flex  .select-frame::after{
  content:'';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 6px 0 6px;
  border-color: #685a4b transparent transparent transparent;
  position: absolute;
  top:0;
  bottom:0;
  right:8px;
  margin:auto;
  pointer-events: none;
}

.message-list-section .search-flex  .select-frame select{
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  border:none;
  background:none;
  display: block;
  width:100%;
  height:40px;
  background-color:#fff;
  padding:0 10px;
  border:2px solid #424242;
  font-size: 14px;
  color:#685a4b;
  cursor:pointer;
}

.message-list-section .search-flex .text-input{
  border:none;
  background:none;
  display: block;
  width:260px;
  height:40px;
  background-color:#fff;
  padding:0 10px;
  border:2px solid #424242;
  font-size: 14px;
  color:#685a4b;
  margin-right: 24px;
}

.message-list-section .search-flex .search-button{
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  border:none;
  background:none;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  width:65px;
  height:24px;
  background-color:#685a4b;
  border-radius: 6px;
  font-size: 12px;
  font-weight: bold;
  color:#fff;
  line-height:1;
}

.message-list-section .search-text{
  text-align: right;
  font-size: 14px;
  color:#685a4b;
  margin-top: 6px;
}

.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:170px;
  padding-left: 16px;
}
.message-list-section .num{
  width:70px;
  padding-right: 4px;
}
.message-list-section .kind{
  /* width:50px; */
  width:80px;
}
.message-list-section .nickname{
  width:120px;
  padding-right: 6px;
}
.message-list-section .category{
  width:120px;
}
.message-list-section .comment{
  width:475px;
}

.message-list-section .message-list{
  margin-bottom: 32px;
}

.message-list-section .message-block{
  display: flex;
  margin-bottom: 12px;
  cursor: pointer;
}

.message-list-section .message-block.no-read-message{
  font-weight: bold;
}

.message-list-section .message-block p{
  color:#685a4b;
  font-size: 14px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.message-list-section .message-block p br{
  display: none;
}


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

.message-list-section .message-popup{

}

.message-list-section .message-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;
  cursor: pointer;
  color:#685a4b;
}

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

.message-list-section .message-popup .frame{
  width:480px;
  max-height:70vh;
  overflow-y: scroll;
  /* height:570px; */
  background-color:rgba(255,255,255,0.9);
  padding:40px 16px;
  position: relative;
}

.message-list-section .message-popup .sender-link{
  text-decoration: underline;
  color:#685a4b;
}

.message-list-section .message-popup .sender-link:hover{
  text-decoration: none;
}

.message-list-section .message-popup .pop-title{
  font-weight: bold;
  font-size: 22px;
  /* margin-bottom: 6px; */
}

.message-list-section .message-popup .pop-text{
  margin-bottom: 20px;
  line-height:1.5;
}

.message-list-section .message-popup .common-orange-button{
  margin:0 auto;
}

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

body.ticket-body{

}
main.ticket-main{

}

.ticket-section{
  padding-bottom: 72px;
}
.ticket-section .sub{
  text-align: center;
  font-size: 14px;
  color: #82684e;
}

.ticket-section .ticket-area{
  max-width: 420px;
  margin: 56px auto 0;
  position: relative;
}

.ticket-section .ticket-area2{
  max-width:100%;
}

.ticket-section .ticket-area .common-cancel-link{
  right:0;
  bottom:-16px;
  /* bottom:0; */
}

main.paypal-main .ticket-section .ticket-area .common-cancel-link{
  right:0;
  /* bottom:-16px; */
  bottom:0;
}

.ticket-section .p1{
  text-align: center;
  margin-bottom: 48px;
  color:#685a4b;
}

.ticket-section .p2{
  text-align: center;
  margin-top: 24px;
  color:#685a4b;
}

.ticket-section .line{
  display:flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 20px;
}

.ticket-section .line1{
  margin-bottom: 32px;
}

.ticket-section .line3{
  margin-bottom: 56px;
}

.ticket-section .line .title{
  width:80px;
  text-align: left;
  font-size: 18px;
  font-weight: bold;
  line-height:1.2;
}

.ticket-section .line .right{
  width:300px;
}

.ticket-section .line .right p{
  padding-right: 56px;
  text-align: right;
  font-size: 20px;
  color:#666666;
  line-height:1;
}

.ticket-section .line .right p span{
  font-weight: bold;
}

.ticket-section .select-frame{
  position: relative;
}

.ticket-section .select-frame::after{
  content:'';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8px 10px 0 10px;
  border-color: #685a4b transparent transparent transparent;
  position: absolute;
  top:0;
  bottom:0;
  right:20px;
  margin:auto;
  pointer-events: none;
}

.ticket-section .select-frame select{
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  border:none;
  background:none;
  display: block;
  width:100%;
  height:40px;
  background-color:#fff;
  padding-right: 54px;
  text-align: right;
  border:1px solid #424242;
  font-size: 20px;
  color:#685a4b;
  cursor:pointer;
}

.ticket-section .border{
  height:1px;
  background-color:#665b4c;
  margin-bottom: 20px;
}

.ticket-section .stripe-button-el{
  border:none!important;
  background:none!important;
  width:205px;
  height:40px;
  border-radius: 40px;
  background-color:#f0a473!important;
  display: flex;
  justify-content: center;
  align-items: center;
  box-shadow: 3px 3px 3px rgba(0,0,0,0.35);
  cursor: pointer;
  margin:0 auto;
}

.ticket-section .stripe-button-el span{
  background:none!important;
  border:none!important;
  font-size: 22px;
  font-weight: bold;
  line-height:1;
  color:#fff;
  padding:0!important;
  box-shadow:none;
  height:auto!important;
  min-height:auto!important;
}

.ticket-section .purchase-button{
  width:205px;
  height:40px;
  border-radius: 40px;
  background-color:#f0a473;
  display: flex;
  justify-content: center;
  align-items: center;
  box-shadow: 3px 3px 3px rgba(0,0,0,0.35);
  cursor: pointer;
  margin:0 auto;
  font-size: 22px;
  font-weight: bold;
  line-height:1;
  color:#fff;
}

.ticket-section .result-text{
  display: flex;
  justify-content: center;
  margin-bottom: 24px;
  font-size: 18px;
  font-weight: bold;
}

.ticket-section .result-text.err{
  color:#ff0000;
}

.ticket-section .paypal-frame{
  display:flex;
  justify-content: center;
  min-height:55px;
}

.ticket-section .paypal-img{
  width:360px;
  margin:0 auto 0;
}

.ticket-section .paypal-complete-area{
  margin-top: 56px;
}

.ticket-section .paypal-complete-area .complete1{
  color:#ff0000;
  font-weight: bold;
  display: flex;
  justify-content: center;
}

.ticket-section .paypal-complete-area .complete2{
  text-align: center;
  margin-top: 6px;
  font-weight: bold;
}

.ticket-section .paypal-complete-area .common-orange-button{
  margin:24px auto 0;
  width:fit-content;
  padding:0 24px;
}

.ticket-section .caution1{
  color:#ff0000;
  font-weight: bold;
  text-align: center;
  margin-bottom: 12px;
}

.ticket-section .caution2{
  font-weight: bold;
  margin-bottom: 16px;
  /* font-size: 14px; */
  line-height: 1.6;
}


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

body.present-body{

}
main.present-main{

}

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

.present-section .p1{
  text-align: center;
  font-size: 14px;
  color:#82684e;
  margin-bottom: 48px;
}

.present-section .p2{
  text-align: center;
  color:#82684e;
  margin-bottom: 20px;
}

.present-section .p3{
  text-align: center;
  color:#82684e;
  margin-bottom: 40px;
}

.present-section .present-area{
  position: relative;
}

.present-section .input-area{
  max-width:410px;
  margin:0 auto  40px;
}

.present-section .line{
  display:flex;
  /* align-items: center; */
  margin-bottom: 20px;
}

.present-section .line3{
  margin-bottom: 40px;

}

.present-section .line .left{
  font-size: 18px;
  font-weight:bold;
  line-height:1;
  text-align: right;
  /* width:100px; */
  width: 170px;
  padding-top: 11px;
}

.present-section .line .center{
  /* display:flex;
  justify-content: flex-end; */
  margin-left: 32px;
}

.present-section .line .center .total{
  min-width:170px;
  margin:0 0 0 auto;
  height:40px;
  padding:0 16px;
  display:flex;
  align-items: center;
  justify-content: flex-end;
  font-size: 20px;
  line-height:1;
  color:#ffffff;
  background-color:#665b4c;
}

.present-section .line .center .input-give{
  border:none;
  background:none;
  display: block;
  margin:0 0 0 auto;
  width:170px;
  height:40px;
  border:2px solid #424242;
  /* padding:0 16px; */
  font-family:'メイリオ', 'Meiryo', sans-serif;
  background-color:#fff;
  color:#685a4b;
  font-size: 20px;
  text-align: right;
}

.present-section .line .center .balance{
  min-width:170px;
  height:40px;
  margin:0 0 0 auto;
  padding:0 16px;
  display:flex;
  align-items: center;
  justify-content: flex-end;
  font-size: 20px;
  line-height:1;
  color:#685a4b;
}

.present-section .line .right{
  margin-left: 16px;
  color:#685a4b;
  font-size: 20px;
  line-height:1;
  padding-top: 11px;
}

.present-section .border{
  height:1px;
  background-color: #665b4c;
  margin-bottom: 20px;
}

.present-section .name-block{

}

.present-section .name-block .title{
  display: flex;
  align-items: center;
  margin-bottom: 12px;
  color:#665b4c;
  font-size: 20px;
  font-weight: bold;
  line-height:1;
}

.present-section .name-block .title span{
  font-size: 14px;
  margin-left: 16px;
  font-weight: normal;
}
.present-section .name-block .to-name{
  font-size: 20px;
  font-weight: bold;
  background-color:#fff;
  padding:8px 12px;
  border:2px solid #424242;
  background-color:#fff;
  min-height:40px;
  /* color:#665b4c; */
  padding-right: 4px;
}

.present-section .send-button{
  margin:0 auto;
}

.present-section .common-cancel-link{
  left:calc(50% + 180px);
  bottom:-6px;
}

.present-section .err-text{
  color:#ff0000;
}

.present-section .complete-text{
  display:flex;
  justify-content:center;
  margin-bottom: 24px;
  font-size:18px;
  font-weight: bold;
}

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

body.history-body{

}
main.history-main{

}

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

.history-section .sub{
  text-align: center;
  font-size: 14px;
  color:#82684e;
}


.history-section .btn-block{
  margin-bottom: 32px;
  margin-top: 40px;
}

.history-section .btn-block p{
  text-align: center;
  font-size: 14px;
  color:#685a4b;
}

.history-section .btn-block .common-orange-button{
  width:140px;
  height:30px;
  border-radius: 15px;
  font-size: 17px;
  margin:0 auto;
  background-color:#e87a00!important;
}

.history-section .total-block{
  margin-bottom: 40px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.history-section .total-block p{
  color:#685a4b;
  font-size: 14px;
  line-height:1;
  margin-right: 16px;
}

.history-section .total-block .total{
  min-width:100px;
  padding:0 12px;
  height:26px;
  background-color:#665b4c;
  display:flex;
  align-items:center;
  justify-content: flex-end;
  font-size: 14px;
  color:#fff;
  line-height:1;
}

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

.history-section .from{
  width:210px;
  padding-right: 10px;
}

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

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

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

.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 .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;
  background-color:#f7f1e8;
  overflow-y: scroll;
}

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

.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;
  z-index:10;
  aspect-ratio: 1 / 0.74;
  background-image: url('../img/common/myp-text-off.png');
  display: none;
  top:65px;
  right:calc(50% - 480px);
}

.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{

}

.mypage-section1{
  padding-top: 40px;
  padding-bottom: 32px;
}

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

.mypage-section1 .flex .left{
  width:460px;
}

.mypage-section1 .flex .right{
  width:460px;
}

.mypage-section1 .prof-flex{
  display:flex;
  margin-bottom: 24px;
}

.mypage-section1 .prof-flex .thumb{
  width:94px;
  height:94px;
  border-radius: 50%;
  position: relative;
  box-shadow:3px 3px 3px rgba(0,0,0,0.6);
  margin-right: 16px;
}

.mypage-section1 .prof-flex .thumb img{
  width:100%;
  height:100%;
  border-radius: 50%;
  object-fit: cover;
}

.mypage-section1 .info-area{
  width:calc(100% - 110px);
}

.mypage-section1 .message-list-link{
  width:31px;
  height:29px;
  background-image: url('../img/common/message-icon2.png');
  position: absolute;
  left:-40px;
  top:-12px;
  text-align: center;
  font-size: 11px;
  color:#fff;
  line-height:1;
  padding-top: 7px;
}

.mypage-section1 .name-line{
  position: relative;
  display:flex;
  margin-bottom: 16px;
}

.mypage-section1 .name-line .teacher-icon{
  width:28px;
  margin-right:16px;
}

.mypage-section1 .name-line .teacher-icon img{
  width:100%;
}

.mypage-section1 .name-line .name{
  width:calc(100% - 44px);
  font-size: 24px;
  font-weight: bold;
  color:#705f42;
  line-height:1.2;
}

.mypage-section1 .country-line{
  display:flex;
  position: relative;
  width:100%;
  min-height:42px;
}

.mypage-section1 .country-line .country{
  width:30px;
  margin-right: 32px;
}

.mypage-section1 .country-line .country-icon-frame{
  width:100%;
  aspect-ratio: 1 / 1;
  /* height:100%; */
  position: relative;
  overflow: hidden;
  box-shadow: 0.7px 0.7px 0.7px rgb(0 0 0 / 35%);
}

.mypage-section1 .country-line .country-icon-frame img{
  display:block;
  position: absolute;
  width:150%!important;
  height:150%!important;
  object-fit: cover;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}

.mypage-section1 .language-line{
  position: absolute;
  right:0;
  bottom:4px;
  display:flex;
  justify-content: flex-end;
}

.mypage-section1 .language-line .language{
  width:30px;
}

.mypage-section1 .language-line .language-icon-frame{
  width:100%;
  aspect-ratio: 1 / 1;
  /* height:100%; */
  position: relative;
  overflow: hidden;
  box-shadow: 0.7px 0.7px 0.7px rgb(0 0 0 / 35%);
  border-radius: 50%;
}

.mypage-section1 .language-line .language-icon-frame img{
  display:block;
  position: absolute;
  width:150%!important;
  height:150%!important;
  object-fit: cover;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}

.mypage-section1 .language-line .language0{
  margin-right: 6px;
}
.mypage-section1 .language-line .language2{
  margin-left: -8px;
}



.mypage-section1 .country-line .evaluation{
  display:flex;
  flex-direction:column;
  align-items: center;
  color:#e69e35;
  font-weight: bold;
  line-height:1;
}

.mypage-section1 .country-line .evaluation img{
  width:22px;
  margin-bottom: 6px;
}



.mypage-section1 .icon-list{
  display: flex;
  justify-content: space-around;
  margin-bottom: 24px;
}

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

.mypage-section1 .icon-list .block .icon{
  height:40px;
  /* height:32px; */
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 3px;
}

.mypage-section1 .icon-list .block .lesson{
  /* width:34px; */
  width:40px;
}
.mypage-section1 .icon-list .block .bell{
  /* width:37px; */
  width:44px;
}
.mypage-section1 .icon-list .block .cancel{
  /* width:24px; */
  width:29px;
}
.mypage-section1 .icon-list .block .evaluation{
  /* width:35px; */
  width:41px;
}
.mypage-section1 .icon-list .block .limit{
  /* width:31px; */
  width:37px;
}

.mypage-section1 .icon-list .block p{
  color:rgba(0,0,0,0.6);
  text-align: center;
  line-height:1;
}

.mypage-section1 .own-flex{
  display: flex;
  justify-content: space-between;
  align-items: center;
  color:#8c96bd;
  font-weight: bold;
  padding-left: 24px;
  padding-right: 16px;
}

.mypage-section1 .own-left{
  display: flex;
  align-items: center;
}

.mypage-section1 .own1{
  padding-left: 48px;
  line-height: 1;
  margin-right: 32px;
  position: relative;
}

.mypage-section1 .own1::before{
  content:'';
  width:28px;
  height:24px;
  background-image:url('../img/common/coin-icon.png');
  position: absolute;
  left:0;
  top:-5px;
}

.mypage-section1 .own2{
  line-height: 1;
}

.mypage-section1 .own-right{
  font-weight: normal;
  font-size:12px;
}

.mypage-section1 .link-flex{
  display:flex;
  justify-content: center;
  margin-top: 32px;
}

.mypage-section1 .link-flex a{
  margin:0 36px;
  display: flex;
  justify-content: center;
  align-items: center;
  width:155px;
  height:24px;
  border:1px solid #666666;
  color:#666666;
  line-height:1;
  font-weight: normal;
  border-radius: 12px;
}

.mypage-section1 .message-list{
  margin-bottom: 32px;
}

.mypage-section1 .message-block{
  display: flex;
  margin-bottom: 8px;
  color:#666666;
  font-weight: normal;
}

.mypage-section1 .message-block.no-read-message,
.mypage-section1 .message-block.no-read{
  font-weight: bold;
}

.mypage-section1 .message-block .date{
  width:72px;
}

.mypage-section1 .message-block .content{
  width:calc(100% - 72px);
}

.mypage-section1 .no-en-message .en-text{
  display:none;
}

.mypage-section1 .message-block .content p{
  /* white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis; */
}

.mypage-section1 .message-block .content p br{
  display: none;
}

.mypage-section1 .message-block .content.letter,
.mypage-section1 .message-block .content.evaluation,
.mypage-section1 .message-block .content.alert,
.mypage-section1 .message-block .content.cancel,
.mypage-section1 .message-block .content.limit,
.mypage-section1 .message-block .content.bell{
  position: relative;
  padding-left: 40px;
}

.mypage-section1 .message-block .content.letter::before,
.mypage-section1 .message-block .content.evaluation::before,
.mypage-section1 .message-block .content.alert::before,
.mypage-section1 .message-block .content.cancel::before,
.mypage-section1 .message-block .content.limit::before,
.mypage-section1 .message-block .content.bell::before{
  content:'';
  position: absolute;
  left:0;
  top:0;
}

.mypage-section1 .message-block .content.letter::before{
  width:24px;
  height:24px;
  background-image:url('../img/common/message-icon3.png');
}
.mypage-section1 .message-block .content.bell::before{
  width:24px;
  height:18px;
  background-image:url('../img/common/bell-icon.png');
}
.mypage-section1 .message-block .content.alert::before{
  width:24px;
  height:24px;
  background-image:url('../img/common/alert-icon.png');
}
.mypage-section1 .message-block .content.cancel::before{
  width:24px;
  height:24px;
  background-image:url('../img/common/cancel-icon.png');
}
.mypage-section1 .message-block .content.limit::before{
  width:24px;
  height:24px;
  background-image:url('../img/common/limit-icon.png');
}
.mypage-section1 .message-block .content.evaluation::before{
  width:24px;
  height:24px;
  background-image:url('../img/common/evaluation-icon.png');
}

.mypage-section1 a.information-link{
  display: block;
  width:28px;
  margin:0 0 0 auto;
}

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


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

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

.mypage-section2 .flex .left,
.mypage-section2 .flex .right{
  width:460px;
}

.mypage-section2 .class-title{
  position: relative;
  display:flex;
  align-items: center;
  height:48px;
  background-color:#f0a473;
  font-size: 24px;
  color:#fff;
  font-weight: bold;
  line-height:1;
  padding-left: 80px;
  margin-bottom: 24px;
}

.mypage-section2 .class-title a{
  position: absolute;
  width:30px;
  right:24px;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);

}



.mypage-section2 .class-title a img{
  width:100%;
}

.mypage-section2 .class-title::before{
  content:'';
  width:35px;
  height:28px;
  background-image:url('../img/common/class-icon.png');
  position: absolute;
  left:24px;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}

.mypage-section2 .receive-title{
  position: relative;
  display:flex;
  align-items: center;
  height:48px;
  background-color:#b089c9;
  font-size: 24px;
  color:#fff;
  font-weight: bold;
  line-height:1;
  padding-left: 80px;
  margin-bottom: 24px;
}

.mypage-section2 .receive-title a{
  position: absolute;
  width:30px;
  right:24px;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);

}

.mypage-section2 .receive-title a img{
  width:100%;
}

.mypage-section2 .receive-title::before{
  content:'';
  width:37px;
  height:28px;
  background-image:url('../img/common/receive-icon.png');
  position: absolute;
  left:24px;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);

}

.mypage-section2 .common-lesson-list .lesson-block{
  padding:0 0 16px;
}

.mypage-section2 .common-lesson-list .lesson-block .line2 .lesson-category-icon {
  width: 35px;
  height: 35px;
}

.mypage-section2 .common-lesson-list .lesson-block .line1,
.mypage-section2 .common-lesson-list .lesson-block .line2{
  padding:0 12px;
}

.mypage-section2 .common-lesson-list .lesson-block .lesson-left{
  margin-right: 0;
}

.mypage-section2 .common-lesson-list .lesson-block .time-plan{
  font-size: 24px;
}

.mypage-section2 .class-list .lesson-block .time-plan{
  background-color:#f0a473;
  color:#fff;
  padding:8px 16px;

}
.mypage-section2 .offer-list .lesson-block .time-plan{
  background-color:#b089c9;
  color:#fff;
  padding:8px 16px;
}

.mypage-section2 .class-list .lesson-block{
  background-color:#fff7eb;
}
.mypage-section2 .offer-list .lesson-block{
  background-color:rgba(176,137,201,0.2);
}

.mypage-section2 .class-list .lesson-block.report-wait{
  position: relative;
  background-color:none;
}

.mypage-section2 .class-list .report-wait::before{
  content:"";
  width:100%;
  height:100%;
  background-color: rgba(255,255,255,0.7);
  position: absolute;
  z-index:3;
  top:0;
  left:0;
}

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

.mypage-section3 .flex .left,
.mypage-section3 .flex .right{
  width:430px;
}

.mypage-section3 .line{
  display: flex;
  align-items: center;
  margin-bottom: 24px;
  padding-left: 40px;
  position: relative;
  color:#666666;
}

.mypage-section3 .line::before{
  content:'';
  position: absolute;
  top: 50%;
  left:0;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}

.mypage-section3 .line .title{
  width:130px;
  font-weight: bold;
  line-height:1;
}

.mypage-section3 .line .amount{
  width:110px;
  text-align: right;
  line-height:1;
}

.mypage-section3 .line .amount.bold{
  font-weight: bold;
}

.mypage-section3 .line .text{
  width:190px;
  line-height:1;
  font-size: 12px;
  text-align: right;
}

.mypage-section3 .line.course::before{
  width:34px;
  height:28px;
  background-image:url('../img/common/course-time-icon.png');
}

.mypage-section3 .line.own{
  color:#8c96bd;
}

.mypage-section3 .line.own::before{
  width:28px;
  height:24px;
  background-image:url('../img/common/coin-icon.png');
  left: 4px;
}

.mypage-section3 .line.message::before{
  width:32px;
  height:32px;
  background-image:url('../img/common/message-icon.png');
}

.mypage-section3 .line.limit::before{
  width:30px;
  height:30px;
  background-image:url('../img/common/limit-icon.png');
}

.mypage-section3 .line.lesson::before{
  width:32px;
  height:26px;
  background-image:url('../img/common/lesson-icon.png');
}

.mypage-section3 .line.student::before{
  width:28px;
  height:28px;
  background-image:url('../img/common/student-icon.png');
}

.mypage-section3 .line.limit{
  color:#ff00dd;
  display:block;
}

.mypage-section3 .line.limit .limit-flex{
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 4px;
}

.mypage-section3 .line.limit .time{
  font-weight: bold;
  line-height:1;
  /* font-size: 15px;
  white-space: nowrap; */
}

.mypage-section3 .line.limit .text{
  width:auto;
}

.mypage-section3 .language-line{
  display: flex;
  justify-content: space-between;
  margin-bottom: 12px;
}

.mypage-section3 .language-line .title{
  font-weight: bold;
  line-height:1.2;
  color:#666666;
}

.mypage-section3 .language-line .language-block{
  width:190px;
}

.mypage-section3 .language-line .language{
  font-weight: bold;
  color:#82684e;
  padding-left: 4px;
  padding-bottom: 3px;
  line-height:1;
}

.mypage-section3 .language-line .border{
  height:1px;
  background-color: #82684e;
  margin-bottom: 3px;
}

.mypage-section3 .language-line .level{
  text-align: right;
  color:#82684e;
  padding-right: 4px;
  line-height:1;
}

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

.mypage-section3 .link-list{
  max-width:750px;
  margin:40px auto 0;
  display:flex;
  align-items: center;
}

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

.mypage-section3 .link-list .link img{
  width:100%;
}

.mypage-section3 .link-list .link{

  position: relative;
}

.mypage-section3 .link-list .link p{
  position: absolute;
  color:#4d4d4d;
  font-size: 14px;
  font-weight: bold;
  line-height:1;
  white-space: nowrap;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  text-align: center;
}

.mypage-section3 .link-list .link p.bottom{
  bottom:4px;

}

.mypage-section3 .link-list .link p.top{
  top:-2px;
}

.mypage-section3 .link-list1{
  margin-bottom: 56px;
  /* padding-top: 48px; */
  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;
}

.information-list-section .information-list{
  margin-top: 40px;
  margin-bottom: 48px;
}

.information-list-section .information-block{
  margin-bottom: 16px;
  padding-left:16px;
  color:rgba(0,0,0,0.6);
  display:block;
  font-weight: normal;
  position: relative;
}

.information-list-section .information-block.no-read,
.information-list-section .information-block.no-read-message{
  font-weight: bold;
  cursor: pointer;
}

.information-list-section .information-block::before{
  content:'・';
  color:rgba(0,0,0,0.6);
  font-size: 18px;
  font-weight: bold;
  line-height:1;
  position: absolute;
  left:0;
  top:4px;
}

.information-list-section .information-block .date{
  font-size: 18px;
  font-weight: bold;
}

.information-list-section .information-block .text{
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  letter-spacing: 0.02em;
}

.information-list-section .information-block .text br{
  /* display: none; */
}

.information-list-section .student-list .information-block .en-text{
  display: block;
}

.information-list-section .information-block .en-text{
  display: none;
}

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

body.information-detail-body{

}

main.information-detail-main{

}

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

.information-detail-section .detail-block{
  margin-top: 48px;
  padding-left:16px;
  position: relative;
}

.information-detail-section .detail-block::before{
  content:'・';
  color:rgba(0,0,0,0.6);
  font-size: 18px;
  font-weight: bold;
  line-height:1;
  position: absolute;
  left:0;
  top:4px;
}

.information-detail-section .detail-block .date{
  font-size: 18px;
  font-weight: bold;
}

.information-detail-section .detail-block .text-block{
  margin-top: 32px;
  font-size: 18px;
  line-height:1.6;
}

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

}

main.offer-main{
  /* overflow: visible; */
}

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

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

.offer-section2::before{
  content: '';
  width: 100%;
  height: 100%;
  background-color: #fff;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  z-index: -3;

}

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

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

.offer-section3 .offer-set-block{
  height:80px;
  position: relative;
  margin-bottom: 16px;
  overflow: hidden;
}

.offer-section3 .offer-set-block::before{
  content:"";
  width:100%;
  height:100%;
  background-color: #f0a473;
  position: absolute;
  z-index:-3;
  top:0;
  left:0;
}

.offer-section3 .offer-set-block .offer-count{
  width:100px;
  height:100px;
  border-radius: 50%;
  background-color: #f7f1e8;
  position: absolute;
  left:14px;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  z-index:-2;
  display:flex;
  justify-content: center;
  align-items: center;
  color:#f0a473;
  font-size: 46px;
  font-weight: bold;
  line-height:1;
  padding-bottom: 30px;
}

.offer-section3 .offer-set-block .offer-time{
  position: absolute;
  color:#808080;
  font-size: 22px;
  font-weight: bold;
  line-height:1;
  right:20px;
  bottom:8px;
}

.offer-section3 .offer-set-block .offer-remove{
  width:22px;
  height:22px;
  cursor:pointer;
  background-image: url('../img/common/cancel2.png');
  position: absolute;
  right:20px;
  top:10px;
}

.offer-section3 .offer-set-block .tool-list{
  position: absolute;
  left:130px;
  top:10px;
  display:flex;
  align-items: center;
}

.offer-section3 .offer-set-block .tool-list li{
  width:31px;
  height:31px;
  margin-right: 12px;
}

.offer-section3 .offer-set-block .tool-list li.wechat-icon{
  width:38px;
}

.offer-section3 .balance-list{
  max-width:420px;
  margin:0 auto;
}

.offer-section3 .balance-list .border{
  height:1px;
  background-color:#665b4c;
  margin-bottom: 16px;
}

.offer-section3 .balance-block{
  display:flex;
  justify-content:space-between;
  margin-bottom: 16px;
}

.offer-section3 .balance-block p{
  font-size: 22px;
  line-height:1;
}

.offer-section3 .balance-block p span,
.offer-section3 .balance-block p b{
  display: inline-block;
}

.offer-section3 .balance-block .title{
  position: relative;
  padding-left: 24px;
}

.offer-section3 .balance-block .title::before{
  content:"・";
  font-size: 22px;
  line-height:1;
  position: absolute;
  left:0;
  top:0;
}

.offer-section3 .short-err{
  display: flex;
  justify-content: center;
  color:#ff0000;

}

.offer-section3 .reminder-area{
  margin-top:64px;
  margin-bottom: 40px;
}

.offer-section3 .reminder-area .reminder1{
  text-align: center;
  color:#666666;
  font-size: 18px;
  line-height:1;
  margin-bottom: 24px;
}

.offer-section3 .reminder-area .reminder2{
  color:#000;
  display: flex;
  justify-content: center;
  margin-bottom: 24px;
}


.offer-section3 .reminder-area .reminder-flex{
  max-width:420px;
  margin:0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 18px;
  color:#666666;
  font-weight: bold;
  line-height:1;
}

.offer-section3 .reminder-area .def{
  position: relative;
  padding-left: 32px;
}

.offer-section3 .reminder-area .def::before{
  content:"";
  width:11px;
  height:8.5px;
  background-image: url('../img/common/check.png');
  position: absolute;
  left:0;
  top:4px;
}

.offer-section3 .reminder-area .reminder36{
  cursor: pointer;
  display: flex;
  justify-content: center;
  align-items: center;
}

.offer-section3 .reminder-area .reminder36 input{
  width:13px;
  height:13px;
  margin-right: 16px;
}

.offer-section3 .reminder-area .free-reminder-block{
  display: flex;
  justify-content:center;
  align-items: center;
}

.offer-section3 .reminder-area .select-frame{
  position: relative;
  width:90px;
  margin:0 12px;
}

.offer-section3 .reminder-area .select-frame::after{
  content:'';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8px 10px 0 10px;
  border-color: #656565 transparent transparent transparent;
  position: absolute;
  top:0;
  bottom:0;
  right:8px;
  margin:auto;
  pointer-events: none;
}

.offer-section3 .reminder-area .select-frame select{
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  border:none;
  background:none;
  display: block;
  width:100%;
  height:40px;
  background-color:#fff;
  padding:0 20px;
  border:1px solid #424242;
  font-size: 18px;
  color:#697c85;
  font-weight: normal;
  cursor:pointer;
}

.offer-section3 .offer-submit{
  margin:0 auto 48px;
}

.offer-section3 .offer-submit.short-rock{
  opacity:0.4;
  pointer-events: none;
}

.offer-section3 .offer-ja{
  position: absolute;
  text-align: center;
  color:#82684e;
  font-size: 14px;
  line-height:1;
  pointer-events: none;
  /* transform: translateX(160px) translateY(26px); */
  width:fit-content;
  right:-110px;
  font-weight: normal;
}

.offer-section3 .offer-text-area{
  display: flex;
  justify-content: center;
  margin-top: 48px;
}

.offer-section3 .offer-text-area .p1{
  line-height:1.5;
  margin-bottom: 12px;
}

.offer-section3 .offer-text-area .p2{
  font-size: 18px;
  line-height:1.6;
}

.offer-result-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;
  color:#697c85;

}

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

.offer-result-modal .frame{
  width:480px;
  /* height:570px; */
  background-color:#fff;
  padding:40px 16px;
  position: relative;
}

.offer-result-modal .common-title-flex {
  margin-bottom: 40px;
}

.offer-result-modal .frame .offer-result-modal-close{
  cursor:pointer;
  position: absolute;
  font-size: 30px;
  color:#fff;
  top:-40px;
  right:-40px;
}

.offer-result-modal .frame p{
  /* text-align: center; */
  font-size: 18px;
  /* font-weight: bold; */
}

.offer-result-modal .common-orange-button{
  margin:56px auto 0;
}


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


body.lesson-list-body{

}

main.lesson-list-main{

}

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

.lesson-list-section1 .common-orange-button{
  margin:32px auto 0;
}

.lesson-list-section1 .kind-flex{
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 40px;
}

.lesson-list-section1 .kind-flex .kind{
  font-size: 24px;
  font-weight: bold;
  color:#82684e;
  line-height:1;
  padding-left: 36px;
  position: relative;
  margin:0 16px;
  padding-top: 2px;
}

.lesson-list-section1 .kind-flex .kind.active{
  pointer-events:none;
}

.lesson-list-section1 .kind-flex .kind::before{
  content:"";
  box-sizing: border-box;
  width:26px;
  height:26px;
  border-radius:50%;
  border:3px solid #82684e;
  position: absolute;
  left:0;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}

.lesson-list-section1 .kind-flex .kind.active::before{
  background-color:#82684e;
}

.lesson-list-section1 .delete-result{
  margin-top: 24px;
  display: flex;
  justify-content: center;
}

.lesson-list-section1 .delete-result p{
  color:#ff0000;
}

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


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

body.concent-body{

}

main.concent-main{

}

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

.concent-section1 .concent-limit{
  width:fit-content;
  margin:32px auto 0;
  height:48px;
  background-color: #f27d6f;
  display: flex;
  align-items: center;
  justify-content: center;
  padding:0 28px;
  font-size: 24px;
  font-weight: bold;
  color:#fff;
}

.concent-section2{
  background-color:#fff;
  padding:28px 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:420px;
  margin-bottom: 48px;
}

.concent-section5 .tool-area .tool-name-flex{
  display: flex;
  align-items: center;
  margin-bottom: 16px;
}

.concent-section5 .tool-area .tool-name-flex p{
  font-size: 30px;
  font-weight: bold;
  line-height:1;
  color:#cccccc;
  margin-left: 20px;
}

.concent-section5 .tool-area .voov-icon{
  width:54px;
  height:54px;
  background-image:url('../img/common/voov-off.png');
}
.concent-section5 .tool-area .voov-icon.use{
  background-image:url('../img/common/voov-on.png');
}
.concent-section5 .tool-area .voov-text.use{
  color:#5558af;
}

.concent-section5 .tool-area .zoom-icon{
  width:54px;
  height:54px;
  background-image:url('../img/common/zoom-off.png');
}
.concent-section5 .tool-area .zoom-icon.use{
  background-image:url('../img/common/zoom-on.png');
}
.concent-section5 .tool-area .zoom-text.use{
  color:#5F93FC;
}

.concent-section5 .tool-area .wechat-icon{
  width:68px;
  height:55px;
  background-image:url('../img/common/wechat-off.png');
}
.concent-section5 .tool-area .wechat-icon.use{
  background-image:url('../img/common/wechat-on.png');
}
.concent-section5 .tool-area .wechat-text.use{
  color:#51c332;
}

.concent-section5 .tool-area .skype-icon{
  width:56px;
  height:56px;
  background-image:url('../img/common/skype-off.png');
}
.concent-section5 .tool-area .skype-icon.use{
  background-image:url('../img/common/skype-on.png');
}
.concent-section5 .tool-area .skype-text.use{
  color:#04ADEF;
}

.concent-section5 .tool-area .tool-line{
  margin-bottom: 16px;
}

.concent-section5 .tool-area .tool-line label{
  font-size: 18px;
  color:#656565;
  font-weight: bold;
}

.concent-section5 .tool-area .tool-line input{
  display: block;
  border:none;
  background: none;
  width:100%;
  height:40px;
  padding:0 24px;
  font-size: 18px;
  color:#656565;
  border:1px solid #000;
  background-color: #fff;
}

.concent-section5 .button-area{
  position: relative;
  margin-top: 40px;
}

.concent-section5 .button-area p{
  text-align: center;
  font-size: 20px;
  color:#e87a00;
  line-height:1;
  font-weight: bold;
  margin-bottom: 12px;
}

.concent-section5 .button-area .common-orange-button{
  margin:0 auto;
}

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

.concent-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;
}

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

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

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

.concent-modal .concent-button{
  margin:32px auto 0;
}

.concent-modal .concent-cancel{
  position: absolute;
  cursor: pointer;
  width:32px;
  bottom:32px;
  right:24px;
}


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

body.withdraw-body{

}

main.withdraw-main{

}

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

.withdraw-section .sub{
  text-align: center;
  color:#82684e;
  margin-top: 6px;
  margin-bottom: 24px;
}

.withdraw-section .relust-text{
  display:flex;
  justify-content: center;
  color:#ff0000;
  font-size: 18px;
  margin-bottom: 24px;
}

.withdraw-section .p1{
  text-align: center;
  font-size: 20px;
  font-weight: bold;
  color:#e87a00;
}

.withdraw-section .p2{
  color:#685a4b;
  text-align: center;
  margin-bottom: 40px;
}

.withdraw-section .input-area{
  max-width:420px;
  margin:0 auto 56px;
}

.withdraw-section .input-area .border{
  height:1px;
  background-color:rgba(0,0,0,0.6);
  margin-bottom: 24px;
}

.withdraw-section .input-area .line{
  display:flex;
  align-items: center;
  margin-bottom: 24px;
}

.withdraw-section .input-area .left{
  width:160px;
  text-align: right;
  font-size: 18px;
  font-weight: bold;
}

.withdraw-section .input-area .right{
  /* width:235px; */
  display:flex;
  padding-left: 32px;
  align-items: center;
}

.withdraw-section .input-area .num-block{
  width:175px;
}

.withdraw-section .input-area .num-block p{
  text-align: right;
  padding-right: 16px;
  font-size: 20px;
  line-height:1;
}

.withdraw-section .input-area .unit{
  margin-left: 16px;
  font-size: 20px;
  line-height:1;
  color:#685a4b;
}

.withdraw-section .input-area input{
  border:none;
  background: none;
  display: block;
  width:100%;
  height:40px;
  border:1px solid #424242;
  background-color:#fff;
  padding:0 16px;
  text-align: right;
  font-size: 20px;
  color:#685a4b;
}

.withdraw-section .text-block{
  display: flex;
  justify-content:center;
  margin-bottom: 16px;
}

.withdraw-section .text-block p{
  color:#685a4b;
  line-height:1.4;
}

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

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

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


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

body.report-body{

}
main.report-main{

}

main.report-main .err-text{
  display:flex;
  justify-content:center;
  margin-bottom: 24px;
  margin-top: 24px;
  color:#ff0000;
  font-size: 18px;
}

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

.report-section1 .sub{
  text-align: center;
  color:#82684e;
  font-size: 14px;
  margin-bottom: 32px;
}

.report-section1 .resport-text1{

}

.report-section1 .resport-text1 p{
  line-height:1.2;
  margin-bottom: 12px;
}

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

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





.report-section3 .report-title{
  width:350px;
  height:32px;
  border-radius:0 16px 16px 0;
  background-color: #e0d7ca;
  padding-left: 24px;
  display:flex;
  align-items:center;
  font-size: 18px;
  font-weight: bold;
  line-height:1;
  margin-bottom: 40px;
}

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

.report-section3 .rate-area .rate-info{
  text-align: center;
  margin-top: 16px;
  font-size: 14px;
  color:#685a4b;
}

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

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

.report-section3 .rate-area .rate-set-frame .angle-block{
  position: absolute;
  left: 10px;
  top: 22px;
  width: 303px;
  height: 36px;
  /* border: 1px solid blue; */
}

.report-section3 .rate-area .rate-set-frame .angle-frame{
  width:100%;
  height:100%;
  position: relative;
}

.report-section3 .rate-area .rate-set-frame .rate-set-angle{
  position: absolute;
  height:100%;
  z-index: 3;
  top:0;

  cursor: pointer;
  display: flex;
  align-items:center;
  padding:0 8px;
  /* border:1px solid red; */
}

.report-section3 .rate-area .rate-set-frame .rate-set-angle span{
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 8px 8px 8px;
  border-color: transparent transparent #665b4c transparent;
}

.report-section3 .rate-area .rate-set-frame .rate-block{
  /* border:1px solid red; */
  cursor: pointer;
  position: absolute;
  /* top:-2px;
  height:20px; */
  font-size: 14px;
  line-height:1.2;
  white-space: nowrap;
  text-align: center;
}

.report-section3 .rate-area .rate-set-frame .rate-block1{
  left:-4px;
  top:-14px;
  /* width:64px; */
}
.report-section3 .rate-area .rate-set-frame .rate-block2{
  top:-6px;
  left: 68px;
  /* width: 38px; */
}
.report-section3 .rate-area .rate-set-frame .rate-block3{
  left: 145px;
  top:-6px;
  /* width: 57px; */
}
.report-section3 .rate-area .rate-set-frame .rate-block4{
  left: 213px;
  top:-14px;
  /* width: 50px; */
}
.report-section3 .rate-area .rate-set-frame .rate-block5{
  left: 270px;
  top:-6px;
  /* width: 72px; */
}



.report-section3 .rate-area .rate-set-data{
  position: absolute;
  height:100%;
  cursor: pointer;
  top:0;
  z-index:2;
}

.report-section3 .rate-area .rate-set-data[data-rate="1"]{

  width:50px;
}

.report-section3 .rate-area .rate-set-frame [data-rate-pos="1"]{

}
.report-section3 .rate-area .rate-set-frame [data-rate-pos="1.5"]{
  left:52px;
}
.report-section3 .rate-area .rate-set-frame [data-rate-pos="2"]{
  left:85px;
}
.report-section3 .rate-area .rate-set-frame [data-rate-pos="2.5"]{
  left:118px;
}
.report-section3 .rate-area .rate-set-frame [data-rate-pos="3"]{
  left:153px;
}
.report-section3 .rate-area .rate-set-frame [data-rate-pos="3.5"]{
  left:186px;
}
.report-section3 .rate-area .rate-set-frame [data-rate-pos="4"]{
  left:221px;
}
.report-section3 .rate-area .rate-set-frame [data-rate-pos="4.5"]{
  left:254px;
}
.report-section3 .rate-area .rate-set-frame [data-rate-pos="5"]{
  left:288px;
}


.report-section3 .rate-area .rate-set-frame img{
  width:100%;
  position: absolute;
  height:auto;
  bottom:0;
  left:0;
}

.report-section3 .rate-area .show-rate{
  margin-left: 80px;
  display:flex;
  align-items:center;
  width:175px;
}

.report-section3 .rate-area .show-rate .star-list{
  width:130px;
  /* margin-right: 16px; */
  display:flex;
  justify-content:space-between;
  align-items:center;
}

.report-section3 .rate-area .show-rate .star{
  width:23.5px;
  height:22.5px;
  background-image: url('../img/report/rate3.png');
}
.report-section3 .rate-area .show-rate .star.rate1{
  background-image: url('../img/report/rate1.png');
}
.report-section3 .rate-area .show-rate .star.rate2{
  background-image: url('../img/report/rate2.png');
}

.report-section3 .rate-area .show-rate  .rate-text{
  font-size: 18px;
  text-align: right;
  width:calc(100% - 130px);
  padding-top:5px;
}

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

}

.report-section3 .situation-area .report-title{
  position: relative;
  margin-bottom: 56px;
}

.report-section3 .situation-area .report-title span{
  font-size: 10px;
  position: absolute;
  font-weight: normal;
  right:12px;
  top:12px;
}

.report-section3 .situation-area .situation-text1{
  margin-bottom: 64px;
}

.report-section3 .situation-area .situation-text1 .en{
  font-size: 20px;
  color:#82684e;
  font-weight: bold;
  text-align: center;
  margin-bottom: 8px;
}

.report-section3 .situation-area .situation-text1 .ja{
  text-align: center;
  font-size: 14px;
  color:#685a4b;
}

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

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

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

}

.report-section3 .situation-area .label-box label{
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  font-size: 20px;
  font-weight: bold;
  color:#82684e;
}

.report-section3 .situation-area .label-box label input{
  width:20px;
  height:20px;
  margin-right: 24px;
  cursor: pointer;
}

.report-section3 .situation-area .input-block{
  margin-top: 48px;
  position: relative;
  padding:24px;
  margin-top: 24px;

}

.report-section3 .situation-area .input-block::before{
  content:"";
  width:100%;
  height:calc(100% + 80px);
  background-color:#fff;
  position: absolute;
  bottom:0;
  left:0;
  z-index:-3;
}

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

.report-section3 .situation-area .situation-text3{
  line-height:2;
}

.report-section3 .situation-area .situation-text2 .en{
  font-size: 20px;
  color:#82684e;
  font-weight: bold;
  text-align: center;
  margin-bottom: 8px;
}

.report-section3 .situation-area .situation-text2 .ja{
  text-align: center;
  font-size: 14px;
  color:#685a4b;
}

.report-section3 .situation-area .trouble-list{
  margin-bottom: 24px;
}

.report-section3 .situation-area .trouble-block{
  margin-bottom: 12px;
  display: flex;
  justify-content: space-between;
}

.report-section3 .situation-area .trouble-block.under{
  align-items: flex-end;
  color:#82684e;
  font-size: 14px;
}

.report-section3 .situation-area .trouble-block.under .time-block{
  text-align: right;
}

.report-section3 .situation-area .trouble-block label{
  display: flex;
  cursor: pointer;
  width:220px;
}

.report-section3 .situation-area .trouble-block label input{
  width:14px;
  height:14px;
}

.report-section3 .situation-area .trouble-block label .text{
  width:calc(100% - 14px);
  padding-left: 16px;
  margin-top: -4px;
}

.report-section3 .situation-area .trouble-block label .en{
  font-weight: bold;
  color:#82684e;
  margin-bottom: 2px;
}

.report-section3 .situation-area .trouble-block label .ja{
  color:#82684e;
  font-size: 14px;
}

.report-section3 .situation-area .trouble-block .time-block{
  display: flex;
}

.report-section3 .situation-area .trouble-block .time-block input{
  border:none;
  background:none;
  display: block;
  width:56px;
  height:24px;
  border:1px solid #424242;
  padding:0 0 0 6px;
}

.report-section3 .situation-area .trouble-block .time-block .text{
  padding-left: 20px;
}

.report-section3 .situation-area .trouble-block .time-block .text p{
  font-size: 14px;
  color:#82684e;
  white-space: nowrap;
}

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

.report-section3 .situation-area .teacher-block{
  margin:16px 0 16px 12px;
}

.report-section3 .situation-area .teacher-block .time-block{
  align-items: center;
}
.report-section3 .situation-area .teacher-block .time-block input{
  height:35px;
}
.report-section3 .situation-area .teacher-block .time-block .text p {
  font-size: 14px;
  color: rgba(0,0,0,0.6);
  white-space: nowrap;
  margin-left: -6px;
}

.report-section3 .situation-area .present-link{
  display: block;
  width:60px;
  margin:0 0 0 auto;
}

.report-section3 .situation-area .present-link img{
  width:100%;
}

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

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

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

.report-section3 .comment-area .comment-text1{
  width:calc(100% - 350px);
  padding-left: 48px;
}

.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;
}

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

.report-section3 .refund-area label input{
  width:20px;
  height:20px;
  margin-right: 24px;
  cursor: pointer;
  margin-top: 2px;
}

.report-section3 .refund-area label .en{
  font-weight: bold;
}

.report-section3 .refund-area label .ja{
  color:#685a4b;
  font-size: 14px;
}

.report-section3 .submit-area{

}

.report-section3 .submit-area .report-button{
  margin:0 auto 20px;
  width:340px;
}

.report-section3 .submit-area .report-button.rock{
  pointer-events: none;
  opacity: 0.6;
}

.report-section3 .submit-area .button-text{
  text-align: center;
  font-size: 20px;
  color:#82684e;
  font-weight: bold;
  margin-bottom: 48px;
}

.report-section3 .submit-area .submit-text1{
  text-align: center;
  margin-bottom: 40px;
}

.report-section3 .submit-area .submit-text1 .en{
  color:#e87a00;
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 12px;
}

.report-section3 .submit-area .submit-text1 .ja{
  font-size: 14px;
  color:#685a4b;
  margin-bottom: 12px;
}

.report-section3 .submit-area .submit-text2{
  display:flex;
  justify-content: center;
  line-height: 2;
}

.report-modal{
  position: fixed;
  width:100%;
  height:100vh;
  top:0;
  left:0;
  z-index:100;
  background-color: rgba(0,0,0,0.8);
  display: flex;
  justify-content: center;
  align-items: center;
  transition: 0.4s;
}

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

.report-modal .p1{
  text-align: center;
  color:#656565;
  font-size: 24px;
  font-weight: bold;
  margin-bottom: 24px;
}

.report-modal .p2{
  color:#685a4b;
  font-size: 14px;
  text-align: center;
  margin-bottom: 64px;
}

.report-modal .flex{
  display: flex;
  justify-content: center;
}

.report-modal .flex .left{
  display: flex;
}

.report-modal .flex .icon{
  margin-right: 12px;
}

.report-modal .flex .icon img{
  width:43px;
  margin:0 auto 6px;
}

.report-modal .flex .icon p{
  color:#808080;
  font-size: 12px;
  text-align: center;
}

.report-modal .flex .text{

}

.report-modal .flex .text p{
  font-size: 14px;
  color:#685a4b;
  margin-bottom: 8px;
}

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

.report-modal .flex a.mypage{
  padding:0 24px 8px;
  color:rgba(0,0,0,0.6);
  line-height: 1;
  border-bottom: 1px solid rgba(0,0,0,0.6);
}

/*
------------------------------------------------------
以下、静的ページ共通
------------------------------------------------------
*/
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: space-between;
  margin-bottom: 48px;
}

.company-section1 .info-line .left{
  width:290px;
}
.company-section1 .info-line .right{
  width:calc(100% - 290px);
}

.company-section1 .info-line .left p{
  display: flex;
  font-weight: bold;
  color:#656565;
  font-size: 18px;
}

.company-section1 .info-line .left p span{
  font-weight: normal;
  margin-right: 8px;
}

.company-section1 .info-line .right p{
  color:#000;
  font-size: 18px;
}

.company-section1 .info-line .right p a{
  color:#000;
  font-weight: normal;
}

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

body.commerce-body{

}
main.commerce-main{

}

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

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

.commerce-section1 .commerce-box p{
  line-height:1.8;
  margin-bottom: 24px;
}

.commerce-section1 .commerce-box  a{
  color:rgba(0,0,0,0.6);
}

.commerce-section1 .commerce-box .right{
  text-align: right;
}

.commerce-section1 .commerce-box img{
  display: inline-block;
  /* height:22px;
  width:auto; */
  vertical-align:middle;
}

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

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 .anchor-frame{
  position: relative;
}

.privacy-section1 .privacy-box p{
  line-height:1.8;
  margin-bottom: 24px;
}

.privacy-section1 .privacy-box img{
  display: inline-block;
  /* height:22px;
  width:auto; */
  vertical-align:middle;
}


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

body.rule-body{

}
main.rule-main{

}

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

.rule-section1 .anchor-frame{
  position: relative;
  max-width: 960px;
  margin:0 auto;
}

.rule-section1 .anchor{
  position: absolute;
  text-decoration: underline;
  color:rgba(0,0,0,0.6);
  font-size: 14px;
}

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

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

.rule-section1 .rule-box img{
  display: inline-block;
  /* height:22px;
  width:auto; */
  vertical-align:middle;
}

.rule-section1 .rule-box p{
  line-height:1.8;
  margin-bottom: 32px;
}

.rule-section1 .rule-box p{
  line-height:2;
  word-wrap: break-word;
  margin-bottom: 24px;
}

.rule-section1 .rule-box p.rule-title{
  text-align: center;
  margin-top: 48px;
  margin-bottom: 32px;
}

.rule-section1 .label-flex{
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 48px;
}

.rule-section1 .label-flex label{
  display: flex;
  align-items: center;
  margin:0 24px;
  cursor: pointer;
  font-size: 18px;
}

.rule-section1 .label-flex label input{
  width: 12px;
  height: 12px;
  margin-right: 12px;
}

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

body.faq-body{

}
main.faq-main{

}

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

.faq-section1 .common-title-flex{
  /* padding-bottom: 56px; */
}

.faq-section1 .faq-kind{
  text-align:center;
  margin-top: 72px;
  margin-bottom:32px;
  font-size: 20px;
  font-weight: bold;
}

.faq-section1 .faq-block{
  margin-bottom: 48px;
  line-height: 1.8;
}

.faq-section1 .faq-block .question-area{
  padding-left: 56px;
  padding-bottom: 24px;
  margin-bottom: 16px;
  position: relative;
  cursor: pointer;
}

.faq-section1 .faq-block .question-area::before{
  content:"Q";
  font-size: 50px;
  font-weight: bold;
  line-height:1;
  color:#656565;
  position: absolute;
  left:0;
  top:0;
}

.faq-section1 .faq-block .question-area::after{
  content:"";
  width:31px;
  height:10px;
  background-image: url('../img/common/faq-arrow.png');
  position: absolute;
  bottom:0;
  left:0;
  right:0;
  margin:auto;
  transition: 0.4s;
}

.faq-section1 .faq-block .question-area.active::after{
  transform: rotate(-180deg);
}

.faq-section1 .faq-block .arrow{
  width:30px;
  margin:12px auto;
}

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

.faq-section1 .faq-block .answer-area::before{
  content:"A";
  font-size: 50px;
  font-weight: bold;
  line-height:1;
  color:#656565;
  position: absolute;
  left:100px;
  top:0;
}

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

#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.manage-body{

}

body.manage-body::before {
  content:none;
}

main.manage-main{

}

main.manage-main .manage-search-flex{
  display: flex;
  align-items: center;
  justify-content: space-between;
}

main.manage-main .manage-search-flex .search-left,
main.manage-main .manage-search-flex .search-right{
  display: flex;
  align-items: center;
}

main.manage-main .manage-search-flex p{
  color:#626473;
  line-height:1;
  margin:0 8px;
}

main.manage-main .manage-search-flex p.wave{
  font-size: 14px;
}

main.manage-main .manage-search-flex input[type="date"]{
  display: block;
  border:none;
  background:none;
  width:125px;
  height:24px;
  color:#626473;
  font-size: 14px;
  border:1px solid #626473;
}

main.manage-main .manage-search-flex .select-frame{
  width:115px;
  position: relative;
  margin-right: 12px;
}

main.manage-main .manage-search-flex .select-frame::after{
  content:'';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8px 10px 0 10px;
  border-color: #656565 transparent transparent transparent;
  position: absolute;
  top:0;
  bottom:0;
  right:8px;
  margin:auto;
  pointer-events: none;
}

main.manage-main .manage-search-flex .select-frame select{
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  cursor: pointer;
  display: block;
  border:none;
  background:none;
  width:100%;
  height:24px;
  font-size: 14px;
  color:#626473;
  padding:0 8px;
  border:1px solid #626473;
}

main.manage-main .manage-search-flex input[type="text"]{
  display: block;
  width:260px;
  height:24px;
  font-size: 14px;
  color:#626473;
  padding:0 8px;
  border:1px solid #626473;
}

main.manage-main .manage-search-flex .search-button{
  border:none;
  background:none;
  display: flex;
  justify-content: center;
  align-items: center;
  width:65px;
  height:24px;
  background: rgba(102,98,163,0.6);
  border-radius: 6px;
  font-size: 12px;
  color:#fff;
  font-weight: bold;
  line-height:1;
  margin-left: 28px;
  cursor: pointer;
}

main.manage-main .search-result-text{
  text-align: right;
  margin:8px 0 32px;
  color:#626473;
  font-size: 14px;
}

main.manage-main .table-frame{
  /* overflow-x: scroll;
  max-width: 90vw;
  overflow-y: scroll;
  max-height:500px; */
}

main.manage-main table{
  table-layout: fixed;
  border-collapse: collapse;
  position: relative;
}


main.manage-main table thead{
  position: sticky;

  z-index:2;
  top:0;
  left:0;
  background-color:#fff;
  border:1px solid #fff;
}

main.manage-main table th{

  border:none;
  background-color:#fff;
  text-align: left;
  padding:20px 6px 6px;
  font-size: 13px;
  color:#626473;
  font-weight: normal;
  position: relative;
  white-space: nowrap;
}

main.manage-main table th .wide-switch{
  position: absolute;
  cursor: pointer;
  width:6px;
  height:12px;
  background-image: url('../img/common/expansion.png');
  right:2px;
  bottom:10px;
}

main.manage-main table th .wide-switch.expantion{
  background-image: url('../img/common/shrink.png');
}

main.manage-main table th a{
  color:#626473;
  font-weight: normal;
}

main.manage-main table th span{
  white-space:nowrap;
  position: absolute;
  font-size: 13px;
  line-height:1;
  left:0;
  top:2px;
}

main.manage-main table th.center-th{
  padding:20px 0 6px;
  text-align: center;
}

main.manage-main table td{
  border:1px solid #626473;
  padding:6px;
  font-size: 13px;
  position: relative;
  overflow-x: scroll;
  scrollbar-width: none; /*Firefox対応のスクロールバー非表示コード*/
  -ms-overflow-style: none;/*Internet Explore対応のスクロールバー非表示コード*/
}

main.manage-main table td::-webkit-scrollbar {
 display: none; /*Google Chrome、Safari、Microsoft Edge対応のスクロールバー非表示コード*/
}

main.manage-main table td.center-td{
  padding:6px 0;
  text-align: center;
}

main.manage-main table td.p0{
  padding:0!important;
}

main.manage-main table .link-icon{
  position: absolute;
  display:block;
  top:0;
  bottom:0;
  right:6px;
  margin:auto;
  width:14px;
  aspect-ratio: 1 / 1;
  background-image: url('../img/common/transaction-link.png');
}

main.manage-main table td.right-td{
  text-align: right;
}

main.manage-main table td.no-border{
  border: none;
}




main.manage-main table .w-30{
  width:30px;
  min-width:30px;
  max-width:30px;
}
main.manage-main table .w-35{
  width:35px;
  min-width:35px;
  max-width:35px;
}
main.manage-main table .w-40{
  width:40px;
  min-width:40px;
  max-width:40px;
}
main.manage-main table .w-45{
  width:45px;
  min-width:45px;
  max-width:45px;
}
main.manage-main table .w-50{
  width:50px;
  min-width:50px;
  max-width:50px;
}
main.manage-main table .w-55{
  width:55px;
  min-width:55px;
  max-width:55px;
}
main.manage-main table .w-65{
  width:65px;
  min-width:65px;
  max-width:65px;
}
main.manage-main table .w-70{
  width:70px;
  min-width:70px;
  max-width:70px;
}
main.manage-main table .w-80{
  width:80px;
  min-width:80px;
  max-width:80px;
}
main.manage-main table .w-90{
  width:90px;
  min-width:90px;
  max-width:90px;
}
main.manage-main table .w-95{
  width:95px;
  min-width:95px;
  max-width:95px;
}
main.manage-main table .w-110{
  width:110px;
  min-width:110px;
  max-width:110px;
}
main.manage-main table .w-115{
  width:115px;
  min-width:115px;
  max-width:115px;
}
main.manage-main table .w-120{
  width:120px;
  min-width:120px;
  max-width:120px;
}
main.manage-main table .w-130{
  width:130px;
  min-width:130px;
  max-width:130px;
}
main.manage-main table .w-140{
  width:140px;
  min-width:140px;
  max-width:140px;
}
main.manage-main table .w-160{
  width:160px;
  min-width:160px;
  max-width:160px;
}
main.manage-main table .w-170{
  width:170px;
  min-width:170px;
  max-width:170px;
}
main.manage-main table .w-175{
  width:175px;
  min-width:175px;
  max-width:175px;
}

main.manage-main table td.shrink{
  white-space:nowrap;
  overflow:hidden;
  text-overflow: ellipsis;;
}

main.manage-main table td.shrink.expantion{
  width:auto!important;
  max-width:none!important;
}
main.manage-main table td.remark-td.shrink.expantion{
  width:400px!important;
  max-width:none!important;
}


main.manage-main .container2{
  /* max-width: 1280px; */
  margin:0 auto;

  position: relative;
  /* display: flex;
  justify-content: center; */
}

main.manage-main .container2 .center-box{
  position: relative;
  width:fit-content;
  margin:0 auto;
  padding:0 40px;
}

main.manage-main .wp-pagenavi{
  margin-top: 100px;
}

main.manage-main .manage-top-link{
  position: absolute;
  color:#626473;
  font-weight: normal;
  line-height:1;
  padding:0 24px 6px;
  border-bottom:1px solid #000;
  right:calc(50% + 200px);
  bottom:-56px;
}

main.manage-main .manage-top-link.bottom-adjust{
  bottom:3px;
}




/*
------------------------------------------------------
管理画面 TOP
------------------------------------------------------
*/
body.manage-top-body{

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

main.manage-top-main .bar-title{
  height:30px;
  background-color:#665b4c;
  display:flex;
  justify-content:center;
  align-items:center;
  color:#fff;
  font-size: 20px;
  font-weight: bold;
  line-height:1;
  margin-bottom: 24px;
}

.manage-top-section1{
  padding: 24px 0 ;
  background: #f7f2eb;
  box-shadow: 0 0 5px 0 rgba(0,0,0,0.35);
}

.manage-top-section1 .flex{
  display: flex;
  justify-content: space-between;
  position: relative;
  align-items: center;
}

.manage-top-section1 .flex .withdraw-alert{
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #ff0000;
  width:280px;
  height:36px;
  font-size: 18px;
  color:#fff;
  line-height:1;
  font-weight: bold;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}

.manage-top-section1 .flex .bold{
  font-size: 18px;
  color:rgba(0,0,0,0.6);
  font-weight: bold;
}

.manage-top-section1 .flex .left .p1{
  text-align: center;
  margin-bottom: 8px;
}

.manage-top-section1 .flex .right{
  display: flex;
  align-items: center;
}

.manage-top-section1 .flex .work-area{
  width:160px;
}

.manage-top-section1 .flex .work-area p{
  font-size: 18px;
  font-weight: bold;
  line-height:1;
  padding-bottom: 3px;
  color:#ff6c24;
  border-bottom:1px solid #ff6c24;
  margin-bottom: 16px;
  text-align: center;
}

.manage-top-section1 .flex .work-area p.mb0{
  margin-bottom: 0;
}

.manage-top-section1 .flex .link-area{
  margin-left: 32px;
}

.manage-top-section1 .flex .link{
  display: flex;
  margin-bottom: 12px;
}

.manage-top-section1 .flex .link2{
  margin-bottom: 0;
}

.manage-top-section1 .flex .link img{
  display: block;
  margin:0 auto 4px;
}

.manage-top-section1 .flex .link .icon{
  width:72px;
}

.manage-top-section1 .flex .link .icon .message-icon{
  width:28px;
}

.manage-top-section1 .flex .link .icon .bell-icon{
  width:28px;
}
.manage-top-section1 .flex .icon p{
  color:rgba(0,0,0,0.6);
  text-align: center;
  line-height:1;
  white-space: nowrap;
  font-size: 14px;
  font-weight: normal;
}


.manage-top-section2{
  padding:20px 0 48px;
}

.manage-top-section2 .list-flex{
  display: flex;
  justify-content: space-between;
}

.manage-top-section2 .list-flex ul{
  width:290px;
}

.manage-top-section2 .list-flex ul.ul2{
  width:280px;
}

.manage-top-section2 .list-flex ul li{
  margin-bottom: 12px;
  display: flex;
  justify-content: space-between;
}

.manage-top-section2 .list-flex ul li.center-text{
  display: block;
  margin-bottom: 0;
  margin-top: 24px;
  color:#626473;
  line-height:1;
  text-align: center;
}

.manage-top-section2 .list-flex ul .left{
  width:140px;
  color:#626473;
  line-height:1;
  font-weight: normal;
}

.manage-top-section2 .list-flex ul.ul2 .left{
  width:120px;
}

.manage-top-section2 .list-flex ul .left a{
  position: relative;
  display: block;
  color:#626473;
  line-height:1;
  font-weight: normal;
  /* pointer-events: none; */
}

.manage-top-section2 .list-flex ul .left a::after{
  content:"";
  width:21px;
  height:20px;
  background-image: url('../img/common/graph-icon.png');
  position: absolute;
  top:-3px;
  right:0;
}

.manage-top-section2 .list-flex ul .right{
  color:#626473;
  line-height:1;
}

.manage-top-section2 .list-flex ul .right span{
  font-weight: bold;
}

.manage-top-section3{
  padding-bottom:48px;
}

.manage-top-section3 .menu-flex{
  display: flex;
  justify-content: space-between;
  margin-bottom: 24px;
}

.manage-top-section3 .menu-flex .block{
  display: flex;
  flex-direction: column;
  align-items: center;
}

.manage-top-section3 .menu-flex .btn-link{
  display: flex;
  justify-content:center;
  align-items: center;
  width:215px;
  height:36px;
  border-radius: 6px;
  background-color: #9e9bc9;
  font-size: 20px;
  color:#fff;
  font-weight: normal;
  line-height:1;
  box-shadow: 5px 5px 5px rgba(0,0,0,0.35);
}

.manage-top-section3 .menu-flex .under-link{
  margin-top: 16px;
  max-width:100%;
  padding:0 6px 4px;
  font-size: 18px;
  font-weight: bold;
  line-height:1;
  text-align: center;
  color:#ff6c24;
  border-bottom:1px solid #ff6c24;

}

.manage-top-section3 .menu-flex .alert{
  padding:0 20px;
  max-width:100%;
  margin-top: 16px;
  background-color:#ff0000;
  height:36px;
  display:flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  font-weight: bold;
  line-height:1;
  color:#ffffff;
}

.manage-top-section3 .data-flex{
  display: flex;
  /* margin-top: -32px; */
}

.manage-top-section3 .data-block{

}

.manage-top-section3 .data-block1{
  width:373px;
}

.manage-top-section3 .data-block .title{
  position: relative;
  margin-bottom: 32px;
  display: flex;
  justify-content: center;
  align-items: center;
  width:215px;
  height:36px;
  border-radius: 6px;
  border:1px solid rgba(102,98,163,0.6);
  color:rgba(102,98,163,0.6);
}

.manage-top-section3 .data-block .title span{
  position: absolute;
  white-space: nowrap;
  font-size: 10px;
  line-height:1;
  bottom:-16px;
  right:0;
  text-align: right;
  color:rgba(0,0,0,0.6);
}

.manage-top-section3 ul{

}

.manage-top-section3 ul li{
  margin-bottom: 12px;
}

.manage-top-section3 ul a{
  font-size: 18px;
  font-weight:bold;
  line-height:1;
  position: relative;
  color:#6662a3;
  /* pointer-events: none; */
}

.manage-top-section3 ul.graph-list a{
  pointer-events: auto;
}

.manage-top-section3 ul li a span{
  color:#665b4c;
}


.manage-top-section3 ul.graph-list a::after{
  content:"";
  width:21px;
  height:20px;
  background-image: url('../img/common/graph-icon.png');
  position: absolute;
  top:2px;
  right:-32px;
}

.manage-top-section3 ul.graph-list a.no-icon::after{
  content:none;
}

.manage-top-section3 ul.csv-list a{
  opacity:0.6;
}

.manage-top-section3 ul.csv-list a::after{
  content:"";
  width:30px;
  height:17px;
  background-image: url('../img/common/csv-icon2.png');
  position: absolute;
  top:3px;
  right:-42px;
}

.manage-top-section3 ul.csv-list a.all{
  opacity:1;
}

.manage-top-section3 ul.csv-list a.all::after{
  background-image: url('../img/common/csv-icon1.png');
}

.manage-top-section4{
  padding-bottom: 72px;
}

.manage-top-section4 .flex{
  display: flex;
  align-items: center;
  padding-left: 40px;
  margin-bottom: 12px;
}

.manage-top-section4 .flex p{
  color:#626473;
  margin-right: 32px;
}

.manage-top-section4 .flex input{
  border:none;
  background: none;
  display: block;
  width:375px;
  height:35px;
  border:1px solid #424242;
  padding:0 16px;
  margin-right: 40px;
}

.manage-top-section4 .flex .adress-button{
  width:105px;
  height:35px;
  font-weight: normal;
  border-radius:3px;
}
.manage-top-section4 .err-text{
  color:#ff0000;
  font-weight: bold;
  text-align: center;
}

.manage-top-section4 .complete-text{
  font-weight: bold;
  text-align: center;
}

/*
------------------------------------------------------
取引管理
------------------------------------------------------
*/
body.manage-transaction-body{

}
main.manage-transaction-main{

}

.manage-transaction-section1{
  padding-bottom: 72px;
}

.manage-transaction-section1 .withdraw-flex{
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 40px;
}

.manage-transaction-section1 .withdraw-text{
  color:#ff00d4;
  font-size: 18px;
  font-weight: bold;
  line-height:1;
  opacity:0;
}

.manage-transaction-section1 .withdraw-text.show{
  opacity:1;
}

.manage-transaction-section1 .withdraw-alert{
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #ff0000;
  width:308px;
  height:36px;
  font-size: 18px;
  color:#fff;
  line-height:1;
  font-weight: bold;
  opacity:0;
}

.manage-transaction-section1 .withdraw-alert.show{
  opacity:1;
}

.manage-transaction-section1 .edit-link{
  display: flex;
  align-items: center;
  width:165px;
  height:26px;
  border-radius: 6px;
  background:rgba(255,144,64,0.7);
  color:#fff;
  font-weight: bold;
  line-height:1;
  padding-left: 24px;
  margin-right: 96px;
  position: relative;
}

.manage-transaction-section1 .edit-link::after{
  content:"";
  width:16px;
  height:16px;
  background-image: url('../img/common/transaction-icon.png');
  position: absolute;
  right:12px;
  top:0;
  bottom:0;
  margin:auto;
}

.manage-transaction-section1 table .manual{
  background-color:#d9d9d9;
}

.manage-transaction-section1 table .alert,
.manage-transaction-section1 table .wait.alert{
  background-color:#ffb0ff;
}

.manage-transaction-section1 table .wait{
  background-color:#ffe2cc;
}

.manage-transaction-section1 table .complete{
  background-color:#defffb;
}


/*
------------------------------------------------------
完了報告 管理
------------------------------------------------------
*/


body.manage-report-body{

}
main.manage-report-main{

}

.manage-report-section1{
  padding-bottom: 72px;
}

.manage-report-section1 table tr.blue{
  background-color:#bfe0ff;
}
.manage-report-section1 table tr.white{
  background-color:#fff;
}
.manage-report-section1 table tr.pink{
  background-color:#ffb0ff!important;
}
.manage-report-section1 table tr.gray{
  background-color:#d9d9d9;
}


/*
------------------------------------------------------
取引 新規作成
------------------------------------------------------
*/


body.manage-edit-body{

}



main.manage-edit-main{

}

.manage-edit-section1{
  padding-bottom: 72px;
}

.manage-edit-section1 .top-line{
  display: flex;
  margin-bottom: 48px;
}

.manage-edit-section1 .top-line .link{
  display: flex;
  justify-content: center;
  align-items: center;
  height:40px;
  border-radius:20px;
  padding:0 24px 0 48px;
  position: relative;
  border: 1px solid #665b4c;
  font-size: 18px;
  font-weight: bold;
  line-height:1;
  color:#665b4c;
}

.manage-edit-section1 .top-line .link::after{
  content:"";
  width:16px;
  height:16px;
  border-radius: 50%;
  border:1px solid #665b4c;
  position: absolute;
  left:16px;
  top:0;
  bottom:0;
  margin:auto;
}

.manage-edit-section1 .top-line .link.active{
  pointer-events:none;
  background-color:#665b4c;
  color:#fff;
}

.manage-edit-section1 .top-line .link.active::after{
  border:1px solid #fff;
}

.manage-edit-section1 .top-line .link1{
  margin-right: 200px;
}

.manage-edit-section1 .flex{
  display: flex;
  margin-bottom: 32px;
}

.manage-edit-section1 .flex p{
  font-size: 18px;
}



.manage-edit-section1 .flex .left{
  width:200px;
  padding-right: 28px;
  text-align: right;
}

.manage-edit-section1 .flex .right{
  width:calc(100% - 200px);
  display: flex;
}

.manage-edit-section1 .flex .min-left{
  width:180px;
}

.manage-edit-section1 .flex .min-right{
  width:calc(100% - 180px);
}

.manage-edit-section1 .min-flex{
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}

.manage-edit-section1 .show-name-button{
  display: flex;
  align-items: center;
  height:24px;
  border-radius:12px;
  background-color: rgba(102,91,76,0.5);
  font-size: 15px;
  color:#fff;
  line-height:1;
  cursor: pointer;
  margin-right: 32px;
  padding:0 16px;
}

.manage-edit-section1 .show-name{
  font-size: 18px;
}

.manage-edit-section1 .show-name.err{
  color:#ff0000;
  font-weight: bold;
}

.manage-edit-section1 .input-frame1{
  width:110px;
  margin-left: 24px;
}
.manage-edit-section1 .input-frame2{
  width:110px;
}

.manage-edit-section1 .input-frame3{
  width:175px;
}

.manage-edit-section1 .select-frame{
  position: relative;
}

.manage-edit-section1 .select-frame::after{
  content:'';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 5.5px 0 5.5px;
  border-color: #808080 transparent transparent transparent;
  position: absolute;
  top:0;
  bottom:0;
  right:12px;
  margin:auto;
  pointer-events: none;
}

.manage-edit-section1 .select-frame select{
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  border:none;
  background:none;
  display: block;
  width:100%;
  height:30px;
  border:1px solid #424242;
  padding:0 24px 0 16px;
  font-size: 18px;
  color:rgba(0,0,0,0.6);
  cursor:pointer;
}

.manage-edit-section1 .input-frame4{
  width:350px;
  margin-left: 12px;
}

.manage-edit-section1 .input-frame5{
  width:20px;
  height:20px;
  border-radius:4px;
  position: relative;
  border:1px solid #6662a3;
  margin-right: 16px;
  cursor: pointer;
}

.manage-edit-section1 .input-frame5::before{
  content:"";
  width:2px;
  height:12px;
  background-color: rgba(102,98,163,0.6);
  position: absolute;
  top:0;
  left:0;
  bottom:0;
  right:0;
  margin:auto;
}

.manage-edit-section1 .input-frame5.minus::before{
  content:none;
}

.manage-edit-section1 .input-frame5::after{
  content:"";
  width:12px;
  height:2px;
  background-color: rgba(102,98,163,0.6);
  position: absolute;
  top:0;
  left:0;
  bottom:0;
  right:0;
  margin:auto;
}

.manage-edit-section1 .input-frame6{
  width:120px;
  margin-right: 24px;
}

.manage-edit-section1 .input-frame7{
  width:110px;
}

.manage-edit-section1 .input-frame8{
  width:710px;
}

.manage-edit-section1 .ml72{
  margin-left:72px;
}

.manage-edit-section1 input[type="text"],
.manage-edit-section1 input[type="number"]{
  border:none;
  background: none;
  display: block;
  width:100%;
  height:30px;
  border:1px solid #424242;
  padding:0 16px;
}


.manage-edit-section1 .transaction-button{
  margin:56px auto 0;
}

/*
------------------------------------------------------
完了報告 処理入力
------------------------------------------------------
*/
body.manage-report-edit-body{

}

main.manage-report-edit-main{

}

.manage-report-edit-section1{
  padding-bottom: 72px;
}

.manage-report-edit-section1 .info-flex{
  display: flex;
  margin-bottom: 32px;
}

.manage-report-edit-section1 .info-flex .p1{
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 10px;
}

.manage-report-edit-section1 .info-flex .p2{
  font-size: 18px;
}

.manage-report-edit-section1 .info-flex .id-block{
  width:170px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.manage-report-edit-section1 .info-flex .title-block{
  width:540px;
  padding-right: 32px;
}

.manage-report-edit-section1 .flex{
  display: flex;
  justify-content: space-around;
  margin-bottom: 48px;
}

.manage-report-edit-section1 .flex .left,
.manage-report-edit-section1 .flex .right{
  width:440px;
}

.manage-report-edit-section1 .bar{
  height:30px;
  display:flex;
  justify-content: center;
  align-items: center;
  font-size: 20px;
  color:#fff;
  font-weight: bold;
  line-height:1;
  margin-bottom: 24px;
}

.manage-report-edit-section1 .bar.teacher{
  background-color: #665b4c;
}

.manage-report-edit-section1 .bar.student{
  background-color: #94866f;
}

.manage-report-edit-section1 .line{
  display: flex;
  align-items: center;
  margin-bottom: 24px;
}

.manage-report-edit-section1 .line.top{
  align-items: flex-start;
}

.manage-report-edit-section1 .line p{
  font-size: 18px;
}

.manage-report-edit-section1 .label{
  width:110px;
  text-align: right;
}

.manage-report-edit-section1 .block{
  width:calc(100% - 110px);
  padding-left: 40px;
}

.manage-report-edit-section1 .min-flex{
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.manage-report-edit-section1 .select-frame{
  position: relative;
}

.manage-report-edit-section1 .select-frame::after{
  content:'';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 5.5px 0 5.5px;
  border-color: #808080 transparent transparent transparent;
  position: absolute;
  top:0;
  bottom:0;
  right:12px;
  margin:auto;
  pointer-events: none;
}

.manage-report-edit-section1 .select-frame select{
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  border:none;
  background:none;
  display: block;
  width:100%;
  height:30px;
  border:1px solid #424242;
  padding:0 24px 0 16px;
  font-size: 18px;
  color:rgba(0,0,0,0.6);
  cursor:pointer;
}

.manage-report-edit-section1 input[type="text"],
.manage-report-edit-section1 input[type="number"]{
  border:none;
  background: none;
  display: block;
  width:100%;
  height:30px;
  border:1px solid #424242;
  padding:0 16px;
}

.manage-report-edit-section1 input[type="number"]{
  padding:0 0 0 16px;
}

.manage-report-edit-section1 .input-frame1{
  width:150px;
}

.manage-report-edit-section1 .input-frame2{
  width:120px;
}

.manage-report-edit-section1 .input-frame3{
  width:110px;
}

.manage-report-edit-section1 .plus{
  width:12px;
}

.manage-report-edit-section1 .textbox-frame{
  padding:0 24px;
}

.manage-report-edit-section1 .textbox-frame textarea{
  border:none;
  background: none;
  display: block;
  width:100%;
  height:130px;
  border:1px solid #424242;
  padding:12px;
  margin-top: 12px;
}

.manage-report-edit-section1 .report-button{
  margin:0 auto;
}
/*
------------------------------------------------------
会員管理
------------------------------------------------------
*/

body.manage-member-body{

}



main.manage-member-main{

}

.manage-member-section1{
  padding-bottom: 72px;
}

.manage-member-section1 .flex{
  display: flex;
  justify-content: space-between;
  margin-bottom: 32px;
}

.manage-member-section1 .flex .left{

}

.manage-member-section1 .left .search-text{
  text-align: right;
  line-height:1;
  color:#626473;
  margin-top: 6px;
}

.manage-member-section1 .flex .search-flex{
  display: flex;
  align-items: flex-end;
}

.manage-member-section1 .search-flex .block{
  margin-right: 24px;
}

.manage-member-section1 .search-flex .block p{
  line-height:1;
  color:#626473;
  margin-bottom: 6px;
  padding-left: 6px;
}

.manage-member-section1 .search-flex .select-frame{
  position: relative;
  width:115px;
}

.manage-member-section1 .search-flex .select-frame::after{
  content:'';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 5.5px 0 5.5px;
  border-color: #808080 transparent transparent transparent;
  position: absolute;
  top:0;
  bottom:0;
  right:12px;
  margin:auto;
  pointer-events: none;
}

.manage-member-section1 .search-flex .select-frame select{
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  border:none;
  background:none;
  display: block;
  width:100%;
  height:30px;
  border:1px solid #424242;
  padding:0 24px 0 16px;
  font-size: 18px;
  color:rgba(0,0,0,0.6);
  cursor:pointer;
}

.manage-member-section1 .search-flex input[type="text"]{
  border:none;
  background: none;
  display: block;
  width:240px;
  height:30px;
  border:1px solid #424242;
  padding:0 16px;
}

.manage-member-section1 .search-flex button{
  border: none;
  background: none;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 65px;
  height: 24px;
  background: rgba(102,98,163,0.6);
  border-radius: 6px;
  font-size: 12px;
  color: #fff;
  font-weight: bold;
  line-height: 1;
  cursor: pointer;
}

main.manage-main .manage-member-section1 table td {
  padding: 3px 6px;
}

.manage-member-section1 table input[type="text"],
.manage-member-section1 table input[type="number"]{
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  border:none;
  background:none;
  display: block;
  width:100%;
  height:24px;
  margin:0;
  text-align: center;
  /* padding:4px 0; */
}

.manage-member-section1 table input[type="text"].left-text,
.manage-member-section1 table input[type="number"].left-text{
  text-align: left;
  padding:0 3px;
}

.manage-member-section1 table .prof-link{
  display: block;
  width:15px;
}

.manage-member-section1 table .prof-link img{
  width:100%;
}

.manage-member-section1 table .select-frame{
  position: relative;
  width:100%;
  height:100%;
}

.manage-member-section1 table .select-frame::after{
  content:'';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 4px 4px 0 4px;
  border-color: #808080 transparent transparent transparent;
  position: absolute;
  top:0;
  bottom:0;
  right:2px;
  margin:auto;
  pointer-events: none;
}

.manage-member-section1 table .select-frame select{
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  border:none;
  background:none;
  display: block;
  width:100%;
  height:100%;
  padding-right: 5px;
  font-size: 14px;
  color:rgba(0,0,0,0.6);
  cursor:pointer;
  text-align: center;
}

.manage-member-section1 .info-flex{
  display: flex;
  justify-content: center;
}

.manage-member-section1 .info-flex p{
  margin:0 24px;
  margin-top: 8px;
}

.manage-member-section1 .member-button{
  margin:32px auto 0;
  width:105px;
}

/* main.manage-main .manage-member-section1 .table-frame {
  overflow-x: scroll;
  overflow-y: visible;
  max-height: none;
} */


/*
------------------------------------------------------
管理画面、グラフ部分共通
------------------------------------------------------
*/

body.graph-body::before {
  content:none;
}

main.graph-main .graph-common-search-area{
  position: absolute;
  top:0;
  right:0;

}

main.graph-main .graph-common-search-area .search-flex{
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

main.graph-main .graph-common-search-area .select-frame{
  position: relative;
  width:125px;
}

main.graph-main .graph-common-search-area .select-frame::after{
  content:'';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 5.5px 0 5.5px;
  border-color: #808080 transparent transparent transparent;
  position: absolute;
  top:0;
  bottom:0;
  right:12px;
  margin:auto;
  pointer-events: none;
}

main.graph-main .graph-common-search-area .select-frame select{
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  border:none;
  background:none;
  display: block;
  width:100%;
  height:24px;
  border:1px solid #665b4c;
  padding:0 24px 0 20px;
  font-size: 14px;
  color:#626473;
  cursor:pointer;
}

main.graph-main .graph-common-search-area button{
  border: none;
  background: none;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 65px;
  height: 24px;
  background: rgba(102,98,163,0.6);
  border-radius: 6px;
  font-size: 12px;
  color: #fff;
  font-weight: bold;
  line-height: 1;
  cursor: pointer;
  margin-left: 32px;
}

main.graph-main .center-title{
  text-align: center;
  margin-bottom: 48px;
  font-size: 20px;
  font-weight: bold;
  color:#665b4c;
}

main.graph-main .graph-frame canvas{
  display: block;
  width:100%;
}

main.graph-main .manage-top-link{
  position: absolute;
  color:#626473;
  font-weight: normal;
  line-height:1;
  padding:0 24px 6px;
  border-bottom:1px solid #000;
  right:calc(50% + 200px);
  bottom:-56px;
}

/*
------------------------------------------------------
在席会員 国別　分析表
------------------------------------------------------
*/

body .graph-member-body{

}

main .graph-member-main{

}

.graph-member-section1{
  padding-bottom: 72px;
}

.graph-member-section1 .left-border-title{
  position: relative;
  padding-left: 32px;
  margin-bottom: 32px;
  font-size: 18px;
  font-weight: bold;
  line-height:1;
  color:#665b4c;
}

.graph-member-section1 .left-border-title::before{
  content:"";
  width:10px;
  height:30px;
  background-color:#665b4c;
  position: absolute;
  left:0;
  top:-8px;
}

.graph-member-section1 .flex{
  display: flex;
  justify-content: space-between;
}

.graph-member-section1 .flex .left,
.graph-member-section1 .flex .right{
  width:460px;
}

.graph-member-section1 table{
  table-layout: fixed;
  border-collapse: collapse;
}

.graph-member-section1 table td,
.graph-member-section1 table th{
  border: 1px solid #5965a1;
  font-size: 14px;
}

.graph-member-section1 table td{
  height:24px;
  padding:0 6px;
}

.graph-member-section1 table th{
  background-color:#f7f2eb;
}

.graph-member-section1 table .center-text{
  text-align: center;
}
.graph-member-section1 table .right-text{
  text-align: right;
}

.graph-member-section1 table .w-30{
  width:30px;
}

.graph-member-section1 table .w-70{
  width:70px!important;
  max-width:70px!important;

}

.graph-member-section1 table .w-145{
  width:145px!important;
  min-width:145px!important;
}

.graph-member-section1 table .w-215{
  width:215px;
}

/*
------------------------------------------------------
講師への評価　分布グラフ
------------------------------------------------------
*/

body .graph-evaluation-body{

}

main .graph-evaluation-main{

}

.graph-evaluation-section1{
  padding-bottom: 72px;
}

.graph-evaluation-section1 .graph-frame{
  width:500px;
  margin:0 auto;

}


.graph-evaluation-section1 .evaluation-ave{
  text-align: right;
  font-weight: bold;
  color:#665b4c;
  text-decoration: underline;

}

/*
------------------------------------------------------
授業時間とカテゴリー人数推移
------------------------------------------------------
*/

body .graph-lesson-body{

}

main .graph-lesson-main{

}

.graph-lesson-section1{
  padding-bottom: 72px;
}

.graph-lesson-section1 .flex{
  display: flex;
  justify-content: space-between;
  padding-top: 64px;
}

.graph-lesson-section1 .flex .left,
.graph-lesson-section1 .flex .right{
  width:450px;
}

.graph-lesson-section1 .graph-frame{
  position: relative;
}

.graph-lesson-section1 .graph-frame canvas{

}

.graph-lesson-section1 .graph-frame .label1,
.graph-lesson-section1 .graph-frame .label2{
  position: absolute;
  font-size: 12px;
}

.graph-lesson-section1 .graph-frame .label1{
  left:0px;
  top:28px;
}

.graph-lesson-section1 .graph-frame .label2{
  right:-32px;
  bottom:1px;
}

/*
------------------------------------------------------
授業時間分布
------------------------------------------------------
*/

body .graph-long-body{

}

main .graph-long-main{

}

.graph-long-section1{
  padding-bottom: 72px;
}

.graph-long-section1 .graph-frame{
  position: relative;
}

.graph-long-section1 .graph-frame .label1,
.graph-long-section1 .graph-frame .label2{
  position: absolute;
  font-size: 12px;
}

.graph-long-section1 .graph-frame .label1{
  left:12px;
  top:-24px;
}

.graph-long-section1 .graph-frame .label2{
  right:-32px;
  bottom:2px;
}



/*
------------------------------------------------------
時間帯別 実施授業回数
------------------------------------------------------
*/

body .graph-time-body{

}

main .graph-time-main{

}

.graph-time-section1{
  padding-bottom: 72px;
}

.graph-time-section1 .graph-frame{
  position: relative;
  /* background-color:red; */
}

.graph-time-section1 .graph-frame .label1,
.graph-time-section1 .graph-frame .label2{
  position: absolute;
  font-size: 12px;
}

.graph-time-section1 .graph-frame .label1{
  left:3px;
  top:0px;
}

.graph-time-section1 .graph-frame .label2{
  right:-40px;
  bottom:1px;
}

/*
------------------------------------------------------
曜日ごとの授業回数
------------------------------------------------------
*/

body .graph-week-body{

}

main .graph-week-main{

}

.graph-week-section1{
  padding-bottom: 72px;
}

.graph-week-section1 .graph-frame{
  position: relative;
}

.graph-week-section1 .graph-frame .label1,
.graph-week-section1 .graph-frame .label2{
  position: absolute;
  font-size: 12px;
}

.graph-week-section1 .graph-frame .label1{
  left:0;
  top:0;
}

.graph-week-section1 .graph-frame .label2{
  right:0;
  left:0;
  margin:auto;
  bottom:-24px;
  text-align: center;
}

/*
------------------------------------------------------
総合分析
------------------------------------------------------
*/

body .graph-all-body{

}

main .graph-all-main{

}

.graph-all-section1{
  padding-bottom: 72px;
}

.graph-all-section1 .graph-frame{
  position: relative;
}

.graph-all-section1 .graph-frame .label1,
.graph-all-section1 .graph-frame .label2,
.graph-all-section1 .graph-frame .label3,
.graph-all-section1 .graph-frame .label4{
  position: absolute;
  font-size: 12px;
}

.graph-all-section1 .graph-frame .label1{
  left:0;
  top:0;
}

.graph-all-section1 .graph-frame .label2{
  right:10px;
  top:0;
}

.graph-all-section1 .graph-frame .label3{
  right:0;
  bottom:0;
}

.graph-all-section1 .graph-frame .label4{
  right:0;
  bottom:-20px;
}




/*
------------------------------------------------------
csv出力
------------------------------------------------------
*/

body.csv-body::before {
  content:none;
}

.csv-section .csv-common-search-area{
  position: absolute;
  top:0;
  right:0;

}

.csv-section .csv-common-search-area .search-flex{
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

.csv-section .csv-common-search-area .select-frame{
  position: relative;
  width:125px;
}

.csv-section .csv-common-search-area .select-frame::after{
  content:'';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 5.5px 0 5.5px;
  border-color: #808080 transparent transparent transparent;
  position: absolute;
  top:0;
  bottom:0;
  right:12px;
  margin:auto;
  pointer-events: none;
}

.csv-section .csv-common-search-area .select-frame select{
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  border:none;
  background:none;
  display: block;
  width:100%;
  height:24px;
  border:1px solid #665b4c;
  padding:0 24px 0 20px;
  font-size: 14px;
  color:#626473;
  cursor:pointer;
}

.csv-section .csv-common-search-area button{
  border: none;
  background: none;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 65px;
  height: 24px;
  background: rgba(102,98,163,0.6);
  border-radius: 6px;
  font-size: 12px;
  color: #fff;
  font-weight: bold;
  line-height: 1;
  cursor: pointer;
  margin-left: 32px;
}

.csv-section .center-title{
  text-align: center;
  margin-bottom: 48px;
  font-size: 20px;
  font-weight: bold;
  color:#665b4c;
}

.csv-section .csv-frame canvas{
  display: block;
  width:100%;
}

.csv-section .manage-top-link{
  position: absolute;
  color:#626473;
  font-weight: normal;
  line-height:1;
  padding:0 24px 6px;
  border-bottom:1px solid #000;
  right:calc(50% + 200px);
  bottom:0;
}

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

.csv-section .table-area{
  margin-top: 40px;
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: center;
}

.csv-section .csv-download{
  margin:40px auto 0;
}


.csv-section table{
  table-layout: fixed;
  border-collapse: collapse;
}

.csv-section table td,
.csv-section table th{
  border: 1px solid #5965a1;
  font-size: 14px;
  padding:6px 8px;
}

.csv-section table td{

}

main.csv-all-main .csv-section .table-area{
  display: none;
}

.csv-section .csv-all-button{
  margin:0 auto;
}



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

body.community-list-body{

}

main.community-list-main{
  word-break: break-all;
}

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

.community-list-section1 .post-link-frame{
  position: relative;
  width: fit-content;
  margin:0 auto;
}


.community-list-section1 .post-link-remark{
  position: absolute;
  left:calc(100% + 20px);
  top:6px;
  line-height: 1.5;
  white-space: nowrap;
}

.community-list-section1 .post-link{
  display: flex;
  justify-content: center;
  align-items: center;
  width:155px;
  height:35px;
  border-radius: 30px;
  border:2px solid #82684e;
  background-color: #fff;
  box-shadow: 3px 3px 3px rgba(0,0,0,0.35);
  margin:32px auto 40px;
  color:#82684e;
  font-weight: bold;
  line-height: 1;
}

.community-list-section1 .communty-list-area{
  border-top:1px solid #665b4c;
  padding-top: 16px;
}

.community-list-section1 .search-flex{
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: 32px;
  padding:0 36px;
}

.community-list-section1 .search-flex label{
  font-size: 14px;
  font-weight: bold;
  list-style: 1;
  color:#baaa8f;
  margin-bottom: 6px;
  padding-left: 24px;
}

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

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

.community-list-section1 .search-flex .select-frame{
  position: relative;
}

.community-list-section1 .search-flex .select-frame::after{
  content:'';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8px 10px 0 10px;
  border-color: #4b3825 transparent transparent transparent;
  position: absolute;
  top:0;
  bottom:0;
  right:20px;
  margin:auto;
  pointer-events: none;
}


.community-list-section1 .search-flex select{
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  display: block;
  border:1px solid #5a5782;
  background-color: #fff;
  width:325px;
  height:30px;
  border-radius: 20px;
  padding-right:44px;
  padding-left: 24px;
  font-size: 14px;
  font-weight: bold;
  line-height: 1;
  color:#4b3825;
  cursor: pointer;
}

.community-list-section1 .search-flex .community-keyword{
  display: block;
  padding:0 24px;
  width:325px;
  height:40px;
  border:1px solid #5a5782;
  background-color: #fff;
  font-size: 14px;
  font-weight: bold;
  line-height: 1;
  color:#4b3825;
}

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

.community-list-section1 .community-list{

}

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

.community-list-section1 .community-card{
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding:16px 0;
  color:#99abb3;
}

.community-list-section1 .community-card a{
  color:#99abb3;
}


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

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

.community-list-section1 .community-card .community-text{
  color:rgba(0,0,0,0.6);
  line-height: 1.8;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  width: 100%;
}



.community-list-section1 .community-card .community-icon{
  flex-shrink: 0;
  width:68px;
  height:68px;
  border-radius: 50%;
  margin-right: 16px;
  position: relative;
}


.community-list-section1 .community-card .anonymous-mark{
  position: absolute;
  z-index: 3;
  top:-4px;
  left:-4px;
}

.community-list-section1 .community-card .anonymous-mark::after{
  content:'A';
  color:#ff0000;
  font-weight: bold;
  line-height: 1;
  font-size: 20px;
}


.community-list-section1 .community-card .community-icon img{
  width:100%;
  height:100%;
  object-fit: cover;
  border-radius: 50%;
}

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

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

.community-list-section1 .community-card .community-sender{
  display: flex;
  align-items: center;
  margin-top: 4px;
}

.community-list-section1 .community-card .community-sender p{
  width:100%;
  font-size: 24px;
  line-height:1;
  font-weight: bold;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
}

.community-list-section1 .community-card .community-sender.teacher::before{
  width:28px;
  height:28px;
  margin-right: 16px;
  background-image: url('../img/common/teacher-icon.png');
  flex-shrink: 0;
}

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

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

}

.community-list-section1 .community-card .community-good{
  min-width:75px;
  display: flex;
  align-items: center;
  font-weight: bold;
  line-height: 1;
  padding-right: 6px;
}

.community-list-section1 .community-card .community-good::before{
  content:'';
  width:16px;
  height: 15px;
  background-image: url('../img/common/good-gray.svg');
  background-size: contain;
  flex-shrink: 0;
  margin-right: 10px;
}

.community-list-section1 .community-card .community-count{
  display: flex;
  align-items: center;
  font-weight: bold;
  line-height: 1;
}

.community-list-section1 .community-card .community-count::before{
  content:'';
  width:16px;
  height: 16px;
  background-image: url('../img/common/comment-gray.svg');
  background-size: contain;
  flex-shrink: 0;
  margin-right: 10px;
}


.community-list-section1 .community-card.on{
  color:#705f42;
}

.community-list-section1 .community-card.on a{
  color:#705f42;
}

.community-list-section1 .community-card.on .community-icon{
  background-image: none;
  box-shadow: 3px 3px 3px rgba(0,0,0,0.35);
}
.community-list-section1 .community-card.on .community-sender.teacher::before{
  content:'';
}

.community-list-section1 .community-card.on .community-good::before{
  background-image: url('../img/common/good-brown.svg');
}
.community-list-section1 .community-card.on .community-count::before{
  background-image: url('../img/common/comment-brown.svg');
}


.community-list-section1 .wp-pagenavi{
  margin-top: 48px;
}

.community-list-section1 .alert-text{
  margin-top: 72px;
  text-align: center;
  color:#4d4d4d;
  line-height: 1.5;
}

.community-list-section1 .alert-text a{
  width:24px;
  height:24px;
  background-image: url('../img/common/report.svg');
  background-size: contain;
  display: inline-block;
  margin:4px 8px 0;
}

.community-list-section1 .manage-tag-link{
  display: flex;
  justify-content: center;
  margin-top: 32px;
}

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

body.community-body{
  
}

main.community-main{
  word-break: break-all;

}

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

.community-section1 .text-copy{
  position: absolute;
  cursor: pointer;
  width:14px;
  height:15px;
  background-image: url('../img/common/copy-icon.svg');
  background-position: contain;
  z-index: 1;
}

.community-section1 .report{
  position: absolute;
  width:20px;
  z-index: 1;
}


.community-section1 .report img{
  width: 100%;
}


.community-section1 .community-delete-area{
  position: absolute;
}

.community-section1 .community-delete{
  background: none;
  border:none;
  border-radius: 0;
  cursor: pointer;
  display: flex;
  flex-direction: column;
  align-items: center;
  white-space: nowrap;
}

.community-section1 .community-delete::before{
  content:'';
  width:20px;
  height:20px;
  background-image: url('../img/common/cancel2.png');
  background-size: contain;
  margin-bottom: 4px;
}

.community-section1 .community-area{
  padding-top: 24px;
  border-top:1px solid #665b4c;
  margin-top: 32px;
}

.community-section1 .community-card{
  color:#99abb3;
  position: relative;
  min-height: 160px;
}

.community-section1 .community-card .anonymous-mark{
  position: absolute;
  z-index: 3;
  top:-4px;
  left:-4px;
}

.community-section1 .community-card .anonymous-mark::after{
  content:'A';
  color:#ff0000;
  font-weight: bold;
  line-height: 1;
  font-size: 20px;
}

.community-section1 .community-card a{
  color:#99abb3;
}

.community-section1 .community-card .text-copy{
  top:95px;
  left:8px;
}
.community-section1 .community-card .report{
  top:90px;
  left:45px;
}

.community-section1 .community-card .community-delete-area{
  top:95px;
  left:40px;
}

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

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

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

.community-section1 .community-card .community-tag-frame ul{
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  gap:16px 32px;
}

.community-section1 .community-card .community-tag-frame li{
  display: flex;
  justify-content: center;
  align-items: center;
  padding:6px 16px;
  opacity: 0.5;
  border:1px solid #000;
  color:#000;
  border-radius: 100px;
  font-size: 14px;
  line-height: 1.3;
}

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

.community-section1 .community-card .community-text a{
  color:blue!important;
}

.community-section1 .community-card .community-icon{
  flex-shrink: 0;
  width:68px;
  height:68px;
  border-radius: 50%;
  margin-right: 16px;
  position: relative;
}


.community-section1 .community-card .community-icon img{
  width:100%;
  height:100%;
  object-fit: cover;
  border-radius: 50%;
}

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

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

.community-section1 .community-card .community-sender{
  display: flex;
  align-items: flex-start;
  margin-top: 4px;
  width: fit-content;
}

.community-section1 .community-card .community-sender p{
  width:100%;
  font-size: 24px;
  line-height:1.3;
  font-weight: bold;
  /*overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1; */
}

.community-section1 .community-card .community-sender.teacher::before{
  width:28px;
  height:28px;
  margin-right: 16px;
  background-image: url('../img/common/teacher-icon.png');
  flex-shrink: 0;
}

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

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

}

.community-section1 .community-card .community-good{
  min-width:80px;
  display: flex;
  align-items: center;
  font-weight: bold;
  line-height: 1;
  padding-right: 6px;
  cursor: pointer;
}
.community-section1 .community-card .community-good.off{
  pointer-events: none;
}

.community-section1 .community-card .community-good::before{
  content:'';
  width:29px;
  height: 27px;
  background-image: url('../img/common/good-gray-shadow.svg');
  background-size: contain;
  flex-shrink: 0;
  margin-right: 4px;
}

.community-section1 .community-card .community-good.active::before{
  background-image: url('../img/common/good-pink-shadow.svg')!important;
}

.community-section1 .community-card .community-count{
  display: flex;
  align-items: center;
  font-weight: bold;
  line-height: 1;
}

.community-section1 .community-card .community-count::before{
  content:'';
  
  width:16px;
  height: 16px;
  background-image: url('../img/common/comment-gray.svg');
  background-size: contain;
  flex-shrink: 0;
  margin-right: 10px;
}


.community-section1 .community-card.on{
  color:#705f42;
}

.community-section1 .community-card.on a{
  color:#705f42;
}

.community-section1 .community-card.on .community-icon{
  background-image: none;
  box-shadow: 3px 3px 3px rgba(0,0,0,0.35);
}
.community-section1 .community-card.on .community-sender.teacher::before{
  content:'';
}

.community-section1 .community-card.on .community-good::before{
  background-image: url('../img/common/good-brown-shadow.svg');
}
.community-section1 .community-card.on .community-count::before{
  background-image: url('../img/common/comment-brown.svg');
}



.community-section1 .comment-list{
  margin-top: 56px;
  padding-left: 84px;
}

.community-section1 .comment-item{
  padding:24px 0;
  border-top:1px solid #665b4c;
}
.community-section1 .comment-item:last-child{
  border-bottom:1px solid #665b4c;
}

.community-section1 .comment-card{
  padding-left: 90px;
  position: relative;
  min-height: 160px;
  color:#99abb3;
}

.community-section1 .comment-card .anonymous-mark{
  position: absolute;
  z-index: 3;
  top:-4px;
  left:-4px;
}

.community-section1 .comment-card .anonymous-mark::after{
  content:'A';
  color:#ff0000;
  font-weight: bold;
  line-height: 1;
  font-size: 20px;
}


.community-section1 .comment-card a{
  color:#99abb3;
}

.community-section1 .comment-card .text-copy{
  top:95px;
  left:8px;
}
.community-section1 .comment-card .report{
  top:90px;
  left:45px;
}

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

.community-section1 .comment-card .comment-left{
  padding-right: 100px;
}

.community-section1 .comment-card .comment-icon{
  flex-shrink: 0;
  width:68px;
  height:68px;
  border-radius: 50%;
  margin-right: 16px;
  position: absolute;
  top:0;
  left:0;
}

.community-section1 .comment-card .comment-icon img{
  width:100%;
  height:100%;
  object-fit: cover;
  border-radius: 50%;
}

.community-section1 .comment-card .comment-sender br{
  /* display: none; */
}

.community-section1 .comment-card .comment-sender{
  display: flex;
  align-items: flex-start;
  margin-top: 4px;
  width: fit-content;
}

.community-section1 .comment-card .comment-sender p{
  width:100%;
  font-size: 24px;
  line-height:1.3;
  font-weight: bold;
  /* overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1; */
}

.community-section1 .comment-card .comment-sender.teacher::before{
  width:28px;
  height:28px;
  margin-right: 16px;
  background-image: url('../img/common/teacher-icon.png');
  flex-shrink: 0;
}

.community-section1 .comment-card .comment-day{
  font-size: 14px;
  position: absolute;
  white-space: nowrap;
  line-height: 1;
  right:0;
  top:8px;
}

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

.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-card .comment-text a{
  color:blue!important;
}

.community-section1 .comment-card.on{
  color:#705f42;
}

.community-section1 .comment-card.on a{
  color:#705f42;
}

.community-section1 .comment-card.on .comment-icon{
  background-image: none;
  box-shadow: 3px 3px 3px rgba(0,0,0,0.35);
}
.community-section1 .comment-card.on .comment-sender.teacher::before{
  content:'';
}

.community-section1 .comment-card.on .comment-good::before{
  background-image: url('../img/common/good-brown-shadow.svg');
}
.community-section1 .comment-card.on .comment-count::before{
  background-image: url('../img/common/comment-brown.svg');
}

.community-section1 .comment-link-frame{
  position: relative;
  width: fit-content;
  margin:0 auto;
}


.community-section1 .comment-link-remark{
  position: absolute;
  left:calc(100% + 20px);
  top:6px;
  line-height: 1.5;
  white-space: nowrap;
}

.community-section1 .comment-link{
  display: flex;
  justify-content: center;
  align-items: center;
  width:155px;
  height:32px;
  margin:32px auto 0;
  border-radius: 20px;
  border:2px solid #82684e;
  background-color: #fff;
  font-weight: bold;
  color:#82684e;
  box-shadow: 3px 3px 3px rgba(0,0,0,0.35);
}

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

body.comment-post-body{

}

main.comment-post-main{
  word-break: break-all;
}

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

.comment-post-section1 .error{
  color:#ff0000;
  font-size: 14px;
  position: absolute;
  top:calc(100% + 3px);
  left:0;
  width: 100%;
  white-space: nowrap;
}

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

.comment-post-section1 label{
  display: flex;
  align-items: center;
  font-size: 20px;
  font-weight: bold;
  line-height: 1;
  color:#665b4c;
  margin-bottom: 12px;
  padding-left: 6px;
  position: relative;
  width: fit-content;
}

.comment-post-section1 label.must::before{
  content: '*';
  font-size: 18px;
  font-weight: bold;
  color: #ff0000;
  position: absolute;
  right: -16px;
  top: -4px;
}

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

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

.comment-post-section1 .flex .input-block{
  width:415px;
  position: relative;
}

.comment-post-section1 .select-frame{
  position: relative;
}

.comment-post-section1 .select-frame::after{
  content:'';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8px 10px 0 10px;
  border-color: #665b4c transparent transparent transparent;
  position: absolute;
  top:0;
  bottom:0;
  right:20px;
  margin:auto;
  pointer-events: none;
}

.comment-post-section1 select{
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  display: block;
  border:1px solid #424242;
  background-color: #fff;
  width:100%;
  height:40px;
  padding-right:48px;
  padding-left: 24px;
  font-size: 14px;
  font-weight: bold;
  line-height: 1;
  color:#4b3825;
  cursor: pointer;
}

.comment-post-section1 .input-block input{
  display: block;
  border:1px solid #424242;
  background-color: #fff;
  width:100%;
  height:40px;
  padding-right:24px;
  padding-left: 24px;
  font-size: 14px;
  font-weight: bold;
  line-height: 1;
  color:#4b3825;
}

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

.comment-post-section1 .tag-flex .input-block{
  width:300px;
}

.comment-post-section1 .tag-flex .tag-add{
  display: flex;
  justify-content: center;
  align-items: center;
  width:80px;
  height:28px;
  border-radius: 15px;
  background-color: #94866f;
  font-weight: bold;
  color:#fff;
  line-height: 1;
  cursor: pointer;
  margin-left: 32px;
  margin-bottom: 6px;
}

.comment-post-section1 .tag-flex .tag-add.rock{
  pointer-events: none;
}

.comment-post-section1 .tag-list{
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  gap:16px 32px;
  margin-top: 24px;
}

.comment-post-section1 .tag-list li{
  display: flex;
  justify-content: center;
  align-items: center;
  padding:6px 32px 6px 16px;
  opacity: 0.5;
  border:1px solid #000;
  color:#000;
  border-radius: 100px;
  font-size: 14px;
  line-height: 1.3;
  position: relative;
}

.comment-post-section1 .tag-list .js-tag-delete{
  position: absolute;
  cursor: pointer;
  z-index: 2;
  top: 50%;
  right:4px;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  font-size: 24px;
  line-height: 1;
  display: flex;
  justify-content: center;
  align-items: center;
}

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


.comment-post-section1 .text-block textarea{
  display: block;
  border:1px solid #424242;
  background-color: #fff;
  width:100%;
  height:230px;
  padding:16px;
  font-weight: bold;
  line-height: 1.5;
  color:#4b3825;
}

.comment-post-section1 .submit-area{
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 96px;
}

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


/*確認画面*/

.comment-post-section1 .comment-card{
  color:#99abb3;
  margin-top: 48px;
}

.comment-post-section1 .comment-card a{
  color:#99abb3;
}

.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;
  border-radius: 50%;
  margin-right: 16px;
}

.comment-post-section1 .comment-card .comment-icon img{
  width:100%;
  height:100%;
  object-fit: cover;
  border-radius: 50%;
}

.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;
  font-weight: bold;
  /*overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1; */
}

.comment-post-section1 .comment-card .comment-sender.teacher::before{
  width:28px;
  height:28px;
  margin-right: 16px;
  background-image: url('../img/common/teacher-icon.png');
  flex-shrink: 0;
}

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

.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-end;
  margin-top: 48px;
}

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

.comment-post-section1 .comment-card.on{
  color:#705f42;
}

.comment-post-section1 .comment-card.on a{
  color:#705f42;
}

.comment-post-section1 .comment-card.on .comment-icon{
  background-image: none;
  box-shadow: 3px 3px 3px rgba(0,0,0,0.35);
}
.comment-post-section1 .comment-card.on .comment-sender.teacher::before{
  content:'';
}

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

.comment-post-section1 .back-button{
  
  display: flex;
  justify-content: center;
  align-items: center;
  width:150px;
  height:40px;
  border-radius: 20px;
  border:1px solid #82684e;
  font-size: 22px;
  font-weight: bold;
  line-height: 1;
  position: absolute;
  left:0;
  top:0;
  color:#82684e;
}


.comment-post-section1 .send_alert{
  margin-top: 24px;
  text-align: center;
}
/*
------------------------------------------------------
掲示板タグ管理
------------------------------------------------------
*/

body.manage-community-tag-body{
  
}

main.manage-community-tag-main{
  word-break: break-all;

}

.manage-community-tag-section1{
  padding-bottom: 100px;
}

.manage-community-tag-section1 h2{
  text-align: center;
  margin-bottom: 24px;
}

.manage-community-tag-section1 .tag-create-area{
  margin-bottom: 80px;
}

.manage-community-tag-section1 .tag-list{
  width: fit-content;
  margin:0 auto;
}

.manage-community-tag-section1 .tag-list input{
  display: block;
  height:40px;
  padding:0 12px;
  width: 100%;
}

.manage-community-tag-section1 .tag-list li{
  display: flex;
  align-items: flex-start;
  position: relative;
}

.manage-community-tag-section1 .tag-list li + li{
  margin-top: 32px;
}

.manage-community-tag-section1 .tag-list .tag-delete{
  width:32px;
  height:32px;
  position: absolute;
  left:-60px;
  top:4px;
  cursor: pointer;
  background-image: url('../img/common/drawer-close.png');
}

.manage-community-tag-section1 .tag-list .tag-delete.off{
  pointer-events: none;
}

.manage-community-tag-section1 .tag-list .tag-name-line{
  width:300px;
  margin-right: 40px;
}

.manage-community-tag-section1 .tag-list .tag-order-line{
  width:100px;
}

.manage-community-tag-section1 .submit-area{
  display: flex;
  justify-content: center;
  margin-top: 40px;
} 

.manage-community-tag-section1 .err{
  margin-top: 4px;
  color:#ff0000;
}