@charset "UTF-8";
abbr, address, article, aside, audio, b, blockquote, body, canvas, caption, cite, code, dd, del, details, dfn, div, dl, dt, em, fieldset, figcaption, figure, footer, form, h1, h2, h3, h4, h5, h6, header, hgroup, html, i, iframe, img, ins, kbd, label, legend, li, mark, menu, nav, object, ol, p, pre, q, samp, section, small, span, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, time, tr, ul, var, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent
}

body {
  line-height: 1
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block
}

nav ul {
  list-style: none
}

blockquote, q {
  quotes: none
}

blockquote:after, blockquote:before, q:after, q:before {
  content: '';
  content: none
}

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  text-decoration: none
}

ins {
  text-decoration: none
}

ins, mark {
  background-color: #ff9;
  color: #000
}

mark {
  font-style: italic;
  font-weight: 700
}

del {
  text-decoration: line-through
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help
}

table {
  border-collapse: collapse;
  border-spacing: 0
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0
}

input, select {
  vertical-align: middle
}

html {
  box-sizing: border-box;
  -ms-overflow-style: scrollbar;
  font-size: 62.5%
}

*, :after, :before {
  box-sizing: inherit
}

.site-wrapper, body, html {
  width: 100%
}

img {
  max-width: 100%
}

body {
  font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-size: 1pc;
  line-height: 1.7;
  font-weight: 300;
  color: #333;
  background: url(../images/main_bg.png)repeat left top
}

.site-Body {
  padding-top: 0
}

.md-Visual_Image {
  display: block!important;
  width: 100%
}

.md-Visual_Image-SP {
  width: 100%;
  display: none!important
}

.md-Section {
  margin-top: 15px;
  background-color: #fff
}

.md-Section_Head {
  background-color: #f1f5ea;
  border-top: 7px solid #55b55c
}

.md-Section_Head, .md-Section_Head_T {
  font-weight: 600;
  padding: 7px;
  position: relative
}

.md-Section_Head_T {
  background-color: #f3ecda;
  border-top: 7px solid #ab8b38
}

.md-Section_Title {
  font-size: 22px;
  line-height: 1.454545
}

.md-Section_subTitle {
  font-size: 17px;
  color: #55b55c
}

.md-Section_Body {
  padding: 15px
}

.md-Section_Row .md-Section_Head, .md-Section_Row .md-Section_Head_T {
  padding: 8px 13px 7px
}

.md-Section_Row .md-Section_Title {
  font-size: 18px;
  line-height: 1.55555556
}

.md-Section_Row .md-Section_Title img {
  float: left;
  margin-right: 13px
}

.md-Section_Row .md-Section_Body {
  height: 200px;
  overflow-y: scroll;
  padding: 0 13px
}

.md-Section_Row .md-Section_Body::-webkit-scrollbar-track {
  background-color: #fff
}

.md-Section_Row .md-Section_Body::-webkit-scrollbar {
  width: 7px;
  background-color: #fff
}

.md-Section_Row .md-Section_Body::-webkit-scrollbar-thumb {
  background-color: #d6d6d6;
  border-radius: .5rem
}

.md-Panda {
  position: absolute;
  right: 15px;
  top: 40%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  z-index: 4
}

.md-Panda.md-Flow_Icon {
  right: 25px
}

.md-Text {
  font-size: 1pc
}

.md-Text+.md-Text {
  margin-top: 15px
}

.md-Text-Teacher {
  color: #b59639
}

.md-Text-Student {
  color: #55b55c
}

.md-Text-Note {
  font-size: 14px;
  color: red;
  line-height: 1.6
}

.md-Review {
  padding-bottom: 10px
}

.md-Review_Item {
  border-bottom: 1px solid #d6d6d6;
  padding: 15px 0 10px
}

.md-Review_Item:after, .md-Review_Item:before {
  content: '';
  display: table
}

.md-Review_Item:after {
  clear: both
}

.md-Review_Thumb {
  float: left;
  width: 5pc;
  height: 5pc;
  object-fit: contain
}

.md-Review_Info {
  float: left;
  width: 242px;
  width: calc(100% - 8rem);
  padding-left: 10px
}

.md-Notice, .md-Review_Text {
  font-size: 14px;
  line-height: 1.5
}

.md-Notice {
  padding-bottom: 10px
}

.md-Notice_Item {
  padding: 10px 0;
  border-bottom: 1px solid #d6d6d6
}

.md-Notice_Time {
  color: #a6bf06;
  font-weight: 600
}

.md-Flow_Head {
  padding: 0
}

.md-Flow_Head_Title {
  min-height: 94px;
  float: left;
  display: table;
  width: 270px;
  color: #fff;
  text-align: center;
  background-color: #55b55c
}

.md-Flow_Head_Title_Inner {
  display: table-cell;
  vertical-align: middle
}

.md-Flow_Head_Title .en {
  font-size: 9pt;
  display: block;
  margin-top: 2px
}

.md-Flow_Head_Info {
  float: left;
  min-height: 94px;
  display: table;
  width: 450px;
  width: calc(100% - 27rem);
  background-color: #f3faf4
}

.md-Flow_Head_Info_Inner {
  padding: 0 105px 0 20px;
  display: table-cell;
  vertical-align: middle
}

.md-Flow_Head_Info p {
  font-weight: 300
}

.md-Flow_Top_Intro {
  font-weight: 600;
  padding: 9px 0
}

.md-Flow_Top_Intro .svg {
  width: 22px;
  height: 22px;
  fill: #55b55c;
  margin-top: 2px;
  float: left;
  margin-right: 5px
}

.md-Flow_Top_Item {
  float: left;
  width: 355px;
  width: calc(50% - 1rem);
  margin-right: 10px;
  margin-bottom: 23px;
  padding: 20px
}

.md-Flow_Top_Item-Student {
  background-color: #f3faf4
}

.md-Flow_Top_Item-Teacher {
  background-color: #faf8f0
}

.md-Flow_Top_Title {
  margin-bottom: 15px
}

.md-Flow_Top_Title:after, .md-Flow_Top_Title:before {
  content: '';
  display: table
}

.md-Flow_Top_Title:after {
  clear: both
}

.md-Flow_Top_Title img {
  float: left;
  width: 69px;
  margin-right: 15px
}

.md-Flow_Top_Title h3 {
  font-size: 1pc;
  font-weight: 600
}

.md-Flow_Top_Copy {
  font-weight: 600;
  letter-spacing: -.5px
}

.md-Flow_Item {
  border: 6px solid #55b55c;
  padding: 15px
}

.md-Flow_Item_T {
  border: 6px solid #ab8b38;
  padding: 15px
}

.md-Flow_Title {
  color: #55b55c
}

.md-Flow_Title, .md-Flow_Title_T {
  font-size: 26px;
  border-bottom: 1px dotted #ddd;
  padding-bottom: 7px
}

.md-Flow_Title_T {
  color: #ab8b38
}

.md-Flow_Title .number, .md-Flow_Title_T .number {
  color: #999
}

.md-Flow_Arrow {
  background-color: #7ec982
}

.md-Flow_Arrow, .md-Flow_Arrow_T {
  width: 2pc;
  height: 2pc;
  display: block;
  margin: 0 auto;
  padding: 9px 0 7px;
  text-align: center;
  border-radius: 50%
}

.md-Flow_Arrow_T {
  background-color: #ccaf64
}

.md-Flow_Arrow_Wrap {
  margin: 7px 0
}

.md-Flow_Arrow .svg, .md-Flow_Arrow_T .svg {
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
  width: 1pc;
  height: 1pc;
  fill: #fff
}

.md-Card {
  margin-top: 12px;
  position: relative
}

.md-Card:after, .md-Card:before {
  content: '';
  display: table
}

.md-Card:after {
  clear: both
}

.md-Card_Photo {
  float: left;
  margin-right: 20px
}

.md-Card_Photo img {
  display: block;
  margin: 0 auto
}

.md-Conversation {
  margin-top: 27px
}

.md-Conversation:after, .md-Conversation:before {
  content: '';
  display: table
}

.md-Conversation:after {
  clear: both
}

.md-Conversation_Photo {
  border: 5px solid
}

.md-Conversation_Photo-Teacher {
  float: left;
  margin-right: 20px;
  border-color: #b59639
}

.md-Conversation_Photo-Student {
  float: right;
  margin-left: 20px;
  border-color: #55b55c
}

.md-Conversation_Photo img {
  display: block
}

.md-Conversation_Copy {
  font-size: 15px;
  font-weight: 600;
  border: 1px solid #ddd;
  min-height: 5pc;
  display: table;
  width: 620px;
  width: calc(100% - 8rem - 2rem);
  padding: 1pc 25px;
  position: relative;
  box-shadow: 0 0 4px 0 rgba(0, 0, 0, .07)
}

.md-Conversation_Copy:after, .md-Conversation_Copy:before {
  width: 0;
  height: 0;
  border-style: solid;
  position: absolute;
  content: "";
  z-index: 2
}

.md-Conversation_Copy_ShadowArrow {
  width: 0;
  height: 0;
  border-style: solid;
  position: absolute;
  z-index: 1;
  color: transparent
}

.md-Conversation_Copy_ShadowArrow-Teacher {
  border-width: 9px 13px 9px 0;
  border-color: transparent rgba(0, 0, 0, .03) transparent transparent;
  top: 31px;
  left: -13px
}

.md-Conversation_Copy_ShadowArrow-Student {
  border-width: 9px 0 9px 13px;
  border-color: transparent transparent transparent rgba(0, 0, 0, .03);
  top: 31px;
  right: -13px
}

.md-Conversation_Copy-Teacher:before {
  border-width: 8px 9pt 8px 0;
  border-color: transparent #ddd transparent transparent;
  top: 2pc;
  left: -9pt
}

.md-Conversation_Copy-Teacher:after {
  border-width: 8px 9pt 8px 0;
  border-color: transparent #fff transparent transparent;
  top: 2pc;
  left: -10px
}

.md-Conversation_Copy-Student:before {
  border-width: 8px 0 8px 9pt;
  border-color: transparent transparent transparent #ddd;
  top: 2pc;
  right: -9pt
}

.md-Conversation_Copy-Student:after {
  border-width: 8px 0 8px 9pt;
  border-color: transparent transparent transparent #fff;
  top: 2pc;
  right: -10px
}

.md-Conversation_Copy p {
  display: table-cell;
  vertical-align: middle
}

.md-BtnRequest {
  width: 395px;
  margin: 0 auto;
  display: block;
  text-align: center;
  background: #ef848a;
  background: -webkit-gradient(left top, left bottom, color-stop(0, #f09ea0), color-stop(100%, #ef848a));
  background: -webkit-linear-gradient(top, #f09ea0 0, #ef848a 100%);
  background: linear-gradient(to bottom, #f09ea0 0, #ef848a 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f09ea0', endColorstr='#ef848a', GradientType=0);
  border-radius: .7rem;
  padding: 10px 55px;
  max-width: 100%;
  text-decoration: none
}

.md-BtnRequest img {
  float: left
}

.md-BtnRequest_Text {
  font-size: 2.6rem;
  color: #fff;
  font-weight: 600;
  line-height: 5.6rem
}

.md-BtnRequest2 {
  width: 300px;
  margin: 0 auto;
  display: block;
  text-align: center;
  background: #ef848a;
  background: -webkit-gradient(left top, left bottom, color-stop(0, #f09ea0), color-stop(100%, #ef848a));
  background: -webkit-linear-gradient(top, #f09ea0 0, #ef848a 100%);
  background: linear-gradient(to bottom, #f09ea0 0, #ef848a 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f09ea0', endColorstr='#ef848a', GradientType=0);
  border-radius: .7rem;
  padding: 15px;
  max-width: 100%;
  text-decoration: none
}

.md-BtnRequest2 img {
  float: left
}

.md-BtnRequest2_Text {
  font-size: 2.2rem;
  color: #fff;
  font-weight: 600;
  line-height: 5.6rem
}

.md-Page_Body {
  padding: 20px;
  background-color: #fff
}

.md-Page_subTitle {
  font-size: 18px;
  line-height: 1.611111;
  font-weight: 600;
  padding: 6px 0;
  border-top: 2px solid #e2e2e2;
  border-bottom: 3px solid #55b55c;
  margin-bottom: 20px
}

.md-Chart {
  padding-bottom: 30px
}

.md-Chart_Image {
  float: right;
  width: 27pc;
  text-align: center
}

.md-Chart_Info {
  padding: 0 10px;
  width: calc(100% - 43.2rem);
  float: left
}

.md-Chart_List {
  list-style: none
}

.md-Chart_List_Item {
  padding: 10px 0
}

.md-Chart_List_Item:after, .md-Chart_List_Item:before {
  content: '';
  display: table
}

.md-Chart_List_Item:after {
  clear: both
}

.md-Chart_List_Item .color {
  width: 20px;
  height: 20px;
  border: 1px solid #d9d9d7;
  text-indent: -99999px;
  display: block;
  float: left;
  margin-right: 8px
}

.md-Chart_List_Item .color-01 {
  background-color: #ffff68
}

.md-Chart_List_Item .color-02 {
  background-color: #f2c7b0
}

.md-Chart_List_Item .color-03 {
  background-color: #94daa5
}

.md-Chart_List_Item .text {
  font-size: 1pc;
  line-height: 20px
}

.md-Chart_Panda {
  text-align: center;
  margin-top: 50px
}

.md-Service_Unit {
  padding-bottom: 25px
}

.md-Service_Unit:after, .md-Service_Unit:before {
  content: '';
  display: table
}

.md-Service_Unit:after {
  clear: both
}

.md-Service_Unit+.md-Service_Unit {
  border-top: 1px solid #ececec;
  padding-top: 25px
}

.md-Service_Intro {
  float: left;
  width: 25pc;
  width: calc(100% - 28rem)
}

.md-Service_Title {
  font-size: 22px;
  line-height: 1.68181818;
  margin-bottom: 20px
}

.md-Service_Unit-01 .md-Service_Title {
  color: #33a138
}

.md-Service_Unit-02 .md-Service_Title {
  color: #d07b85
}

.md-Service_Unit-03 .md-Service_Title {
  color: #ceb300
}

.md-Service_Unit-04 .md-Service_Title {
  color: #3dae76
}

.md-Service_Unit-05 .md-Service_Title {
  color: #4cacb3
}

.md-Service_Title .number {
  color: #fff;
  font-size: 18px;
  line-height: 30px;
  width: 30px;
  height: 30px;
  display: inline-block;
  margin-right: 8px;
  background-color: #000;
  border-radius: 50%;
  text-align: center;
  float: left;
  margin-top: 3px
}

.md-Service_Unit-01 .md-Service_Title .number {
  background-color: #33a138
}

.md-Service_Unit-02 .md-Service_Title .number {
  background-color: #d07b85
}

.md-Service_Unit-03 .md-Service_Title .number {
  background-color: #ceb300
}

.md-Service_Unit-04 .md-Service_Title .number {
  background-color: #3dae76
}

.md-Service_Unit-05 .md-Service_Title .number {
  background-color: #4cacb3
}

.md-Service_Note {
  float: right;
  width: 280px;
  text-align: center;
  padding-top: 10px
}

.md-Service_Note_Text>span {
  font-weight: 600;
  font-size: 1pc;
  position: relative;
  letter-spacing: .5px;
  display: inline-block
}

.md-Service_Note_Text>span:after, .md-Service_Note_Text>span:before {
  width: 2pc;
  height: 100%;
  position: absolute;
  content: "";
  z-index: 3
}

.md-Service_Note_Text>span:before {
  top: 0;
  right: 102%;
  background: url(../images/line-left.png)no-repeat center center/2pc 75px
}

.md-Service_Note_Text>span:after {
  top: 0;
  left: 102%;
  background: url(../images/line-right.png)no-repeat center center/2pc 75px
}

.md-Service_Unit-01 .md-Service_Note_Text>span {
  color: #33a138
}

.md-Service_Unit-02 .md-Service_Note_Text>span {
  color: #d07b85
}

.md-Service_Unit-03 .md-Service_Note_Text>span {
  color: #ceb300
}

.md-Service_Unit-04 .md-Service_Note_Text>span {
  color: #3dae76
}

.md-Service_Unit-05 .md-Service_Note_Text>span {
  color: #4cacb3
}

.md-Service_Note_Text .sm {
  font-size: 11px;
  line-height: 1.6363636
}

.md-Service_Note_Panda {
  margin-top: 25px
}

.md-Poster {
  margin-top: 20px
}

.md-Poster_Copy {
  font-size: 1pc;
  line-height: 2;
  color: #fff;
  font-weight: 600;
  background-color: #55b55c;
  padding: 30px 10px 50px;
  border-radius: 1rem;
  text-align: center
}

.md-Poster_Image {
  text-align: center;
  margin-top: -40px
}

.md-TeacherDetail:after, .md-TeacherDetail:before {
  content: '';
  display: table
}

.md-TeacherDetail:after {
  clear: both
}

.site-FooterWrapper footer {
  padding: 35px 0 0
}

.site-Footer {
  background-color: #705733
}

.site-Footer_Inner {
  position: relative
}

.site-FooterNav:after, .site-FooterNav:before {
  content: '';
  display: table
}

.site-FooterNav:after {
  clear: both
}

.site-FooterNav_Item {
  float: left;
  width: 25%
}

.site-FooterNav_Item a {
  font-size: 14px;
  text-decoration: none;
  color: #fff;
  display: block
}

.site-FooterCopyright_Text {
  font-size: 14px;
  line-height: 2;
  padding: 15px 70px 20px 0;
  color: hsla(0, 0%, 100%, .5)
}

.site-Nav_Item--active .site-Nav_Link {
  color: #ff0
}

.site-Wrapper {
  position: relative
}

.site-HeaderWrapper {
  background: url(../images/header_bg.png)no-repeat center bottom;
  background-size: cover;
  max-width: 1500px;
  margin-left: auto;
  margin-right: auto
}

.site-Header {
  height: 244px;
  padding: 0
}

.site-Header_Inner {
  text-align: center;
  margin: 0 auto
}

.site-Header_Inner:after, .site-Header_Inner:before {
  content: '';
  display: table
}

.site-Header_Inner:after {
  clear: both
}

.site-Header_Text_Other .site-Register {
  float: right;
  font-weight: 600
}

.site-Header_Text_Other .site-Register_Number {
  font-size: 20px;
  color: #ff7381
}

.site-Header_Text_Other .site-Register_Label {
  font-size: 1pc
}

.site-Header_Slogan {
  float: left;
  width: calc(100% - 23rem);
  text-align: right;
  font-size: 9pt;
  line-height: 1.666667;
  padding: 8px 0;
  font-weight: 500
}

.site-HeaderLogo {
  position: absolute;
  top: 0
}

.site-HeaderLogo_Link {
  display: block
}

.site-HeaderLogo_Link_sp {
  display: none
}

.site-Gnav {
  float: left;
  display: block;
  list-style: none;
  height: 63px
}

.site-Gnav:after, .site-Gnav:before {
  content: '';
  display: table
}

.site-Gnav:after {
  clear: both
}

.site-Gnav_Item {
  float: left;
  padding: 0;
  border-left: 1px solid #7f6848;
  /*width: 13.6rem*/
  width: 20.5rem
}

.site-Gnav_Link {
  display: block;
  text-decoration: none;
  padding: 18px 0;
  font-size: 1pc;
  line-height: 1.6875;
  color: #fff;
  background-color: #6f5736
}

.site-Gnav_Item_s {
  float: left;
  padding: 0;
  border-left: 1px solid #e0f0bb;
  width: 13.6rem
}

.site-Gnav_Link_s {
  display: block;
  text-decoration: none;
  padding: 18px 0;
  font-size: 1pc;
  line-height: 1.6875;
  color: #fff;
  background-color: #31731b
}

.site-Gnav_Item_t {
  float: left;
  padding: 0;
  border-left: 1px solid #e8e6cd;
  width: 13.6rem
}

.site-Gnav_Link_t {
  display: block;
  text-decoration: none;
  padding: 18px 0;
  font-size: 1pc;
  line-height: 1.6875;
  color: #fff;
  background-color: #ab8b38
}

.site-Gnav_Text {
  font-size: 1pc;
  font-size: 1.6rem;
  font-weight: 600;
  display: block;
  text-transform: uppercase
}

.site-Gnav_Icon {
  display: block
}

.site-Gnav_Icon svg {
  width: 23px;
  height: 21px;
  fill: #fff;
  display: block;
  margin: 0 auto
}

.site-PageTop {
  position: absolute;
  bottom: 0;
  right: 0
}

.site-PageTop_Btn {
  text-decoration: none;
  box-sizing: border-box;
  display: block;
  width: 4pc;
  height: 4pc;
  font-size: 0;
  text-align: center;
  line-height: 4pc;
  background-color: rgba(0, 0, 0, .6)
}

.site-PageTop_Btn img {
  width: 1pc;
  height: 19px;
  vertical-align: middle
}

.md-Sidebar_Btn {
  background: #ef848a;
  background: -webkit-gradient(left top, left bottom, color-stop(0, #f09ea0), color-stop(100%, #ef848a));
  background: -webkit-linear-gradient(top, #f09ea0 0, #ef848a 100%);
  background: linear-gradient(to bottom, #f09ea0 0, #ef848a 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f09ea0', endColorstr='#ef848a', GradientType=0);
  border-radius: .7rem;
  padding: 17px 15px;
  display: block;
  margin-bottom: 15px
}

.md-Sidebar_Btn:after, .md-Sidebar_Btn:before {
  content: '';
  display: table
}

.md-Sidebar_Btn:after {
  clear: both
}

.md-Sidebar_Btn img {
  float: left;
  margin-right: 15px
}

.md-Sidebar_Btn span {
  font-size: 28px;
  font-weight: 600;
  color: #fff;
  display: inline-block;
  line-height: 1.5;
  padding: 7px 0
}

.md-Widget {
  margin: 0 0 15px
}

.md-Widget_Title {
  color: #fff;
  font-size: 1pc;
  line-height: 1.6875;
  padding: 7px 10px;
  font-weight: 600
}

.md-LoginForm {
  background-color: #fff;
  padding: 10px 15px 15px
}

.md-LoginForm_Label {
  padding: 8px 0
}

.md-LoginForm_Label img {
  float: left;
  margin: 5px 5px 0 0
}

.input-Email, .input-Password {
  width: 100%;
  background-color: #ececec;
  border: 0;
  outline: 0;
  font-size: 1pc;
  padding: 4px 5px
}

.md-LoginForm_Button .input-Button {
  width: 100%;
  padding: 10px 0;
  text-align: center;
  background-color: #55b55c;
  border: 0;
  color: #fff;
  font-size: 20px;
  border-radius: 3px;
  cursor: pointer;
  margin-top: 15px
}

.md-LoginForm_Button .retrieval-Password {
  display: inline-block;
  font-size: 1.2rem
}

.md-Links {
  background-color: #fff
}

.md-Links h3 {
  background-color: #f0cf3a
}

.md-Links_List {
  list-style: none
}

.md-Links_Item {
  border-top: 1px solid #ececec;
  padding: 0 10px
}

.md-Links_Item:first-child {
  border-top: 0
}

.md-Links_Link {
  display: block;
  padding: 4px 0;
  background: url(../images/arrow_link.png)no-repeat right center;
  background-size: 1.6rem 1.6rem
}

.md-Teacher {
  background-color: #fff
}

.md-Teacher h3 {
  background-color: #58ce90
}

.md-Teacher_Item {
  border-top: 1px solid #ececec;
  padding: .5rem .8rem;
  line-height: 1.4
}

.md-Teacher_Item:after, .md-Teacher_Item:before {
  content: '';
  display: table
}

.md-Teacher_Item:after {
  clear: both
}

.md-Teacher_Item:first-child {
  border-top: 0
}

.md-Teacher_Thumb {
  float: left;
  margin-right: 5px
}

.md-Teacher_Thumb a {
  display: block
}

.md-Teacher_Thumb img {
  display: block;
  width: 5pc;
  height: 5pc;
  object-fit: contain
}

.md-Teacher_At {
  font-size: 14px
}

.md-Teacher_Number {
  font-size: 11px;
  color: #999
}

.md-Teacher-History h3 {
  background-color: #61c2ca
}

@media print, screen and (min-width:1024px) {
  a:hover, input[type="button"]:hover, input[type="submit"]:hover {
    opacity: .8
  }
  .navToggle {
    display: none
  }
  .container {
    width: 750pt;
    margin: 0 auto
  }
  .md-Section_Row {
    margin-right: -1rem
  }
  .md-Section_Row:after, .md-Section_Row:before {
    content: '';
    display: table
  }
  .md-Section_Row:after {
    clear: both
  }
  .md-Section_Row .md-Section {
    float: left;
    margin-right: 1rem;
    width: 35.5rem;
    width: calc(50% - 1rem)
  }
  .md-Flow_Head:after, .md-Flow_Head:before {
    content: '';
    display: table
  }
  .md-Flow_Head:after {
    clear: both
  }
  .md-Flow_Top_Body {
    margin-right: -1rem
  }
  .md-Flow_Top_Body:after, .md-Flow_Top_Body:before {
    content: '';
    display: table
  }
  .md-Flow_Top_Body:after {
    clear: both
  }
  .site-Footer_Inner {
    padding: 0 0 0 1.5rem
  }
  .site-Header_Inner {
    padding-left: 1.5rem;
    padding-right: 0;
    position: relative
  }
  .site-Header_Text {
    margin-top: 6.3rem
  }
  .site-Header_Text:after, .site-Header_Text:before {
    content: '';
    display: table
  }
  .site-Header_Text:after {
    clear: both
  }
  .site-Header_Text_Other {
    float: right
  }
  .site-Header_Text_Other:after, .site-Header_Text_Other:before {
    content: '';
    display: table
  }
  .site-Header_Text_Other:after {
    clear: both
  }
  .site-HeaderLogo {
    left: 1.5rem
  }
  .site-Gnav {
    width: 82rem;
    width: calc(100% - 4.3rem - 12.2rem - 1.5rem);
    position: absolute;
    top: 0;
    right: 0
  }
  .md-Teacher_Thumb {
    width: 8rem
  }
}

@media print, screen and (max-width:1023px) {
  .navToggle {
    display: none
  }
  .container {
    width: 100%;
    padding: 0 1.5rem
  }
  .md-Section_Head, .md-Section_Head_T {
    padding: 1rem 5.5rem 1rem 1rem
  }
  .md-Section_Title {
    font-size: 1.8rem
  }
  .md-Section_subTitle {
    font-size: 1.5rem;
    margin-bottom: .5rem
  }
  .md-Section_Body {
    padding: 1rem
  }
  .md-Panda, .md-Panda.md-Flow_Icon {
    right: 1rem
  }
  .md-Flow_Head {
    padding: 0
  }
  .md-Flow_Head_Title {
    float: none;
    width: 100%;
    display: block;
    padding: 1.5rem 1rem;
    min-height: auto
  }
  .md-Flow_Head_Title_Inner {
    display: block
  }
  .md-Flow_Head_Info {
    float: none;
    width: 100%;
    position: relative;
    min-height: auto
  }
  .md-Flow_Head_Info_Inner {
    padding: 1rem 5.5rem 1rem 1rem
  }
  .md-Flow_Top_Item {
    float: none;
    width: 100%;
    padding: 1rem;
    margin-bottom: 1rem
  }
  .md-Flow_Top_Title h3 {
    font-size: 1.4rem
  }
  .md-Flow_Item, .md-Flow_Item_T {
    border-width: .3rem;
    padding: 1rem
  }
  .md-Flow_Title, .md-Flow_Title_T {
    font-size: 1.8rem
  }
  .md-Card {
    margin-top: 8px
  }
  .md-Card_Photo {
    max-width: 50%;
    margin-right: 1rem
  }
  .md-Conversation {
    margin-top: 2rem
  }
  .md-Conversation_Photo {
    border-width: .3rem;
    width: 6rem
  }
  .md-Conversation_Photo-Teacher {
    margin-right: 1.5rem
  }
  .md-Conversation_Photo-Student {
    margin-left: 1.5rem
  }
  .md-Conversation_Copy {
    padding: 1rem;
    width: calc(100% - 6rem - 1.5rem)
  }
  .md-Page_Head {
    font-size: 2rem;
    padding: 1rem;
    border-top-width: .2rem
  }
  .md-Page_Body {
    padding: 1.5rem 1rem
  }
  .md-Page_subTitle {
    font-size: 1.6rem;
    border-top-width: 1px;
    border-bottom-width: 1px
  }
  .md-Chart_Image {
    max-width: 60%
  }
  .md-Chart_Info {
    min-width: 40%
  }
  .md-Chart_List_Item .text {
    font-size: 1.4rem
  }
  .md-Service_Unit+.md-Service_Unit {
    padding-top: 1rem
  }
  .md-Service_Unit {
    padding-bottom: 1rem
  }
  .md-Service_Title {
    font-size: 1.8rem
  }
  .md-Service_Title .number {
    width: 2.4rem;
    height: 2.4rem;
    font-size: 1.4rem;
    line-height: 2.4rem
  }
  .md-Service_Note_Text>span {
    font-size: 1.4rem
  }
  .md-Poster_Copy {
    font-size: 1.4rem;
    padding: 2rem 1rem 5rem
  }
  .site-FooterWrapper footer {
    padding: 2rem 0
  }
  .site-Header_Inner {
    padding-left: 1rem;
    padding-right: 1rem
  }
  .site-Header_Top {
    min-height: 6.5rem
  }
  .site-Header_Top:after, .site-Header_Top:before {
    content: '';
    display: table
  }
  .site-Header_Top:after {
    clear: both
  }
  .site-Header_Slogan {
    padding-left: 13.5rem
  }
  .site-HeaderLogo {
    height: 5.4rem;
    width: 12.2rem;
    left: 1rem
  }
  .site-Gnav {
    width: 100%
  }
  .site-Gnav_Item, .site-Gnav_Item_s, .site-Gnav_Item_t {
    width: 16.66667%
  }
  .site-Gnav_Link, .site-Gnav_Link_s, .site-Gnav_Link_t {
    padding: 1.3rem 0
  }
  .site-Gnav_Text {
    font-size: 1.4rem
  }
  .site-PageTop {
    right: 1rem
  }
  .md-Teacher_Thumb {
    width: 10rem
  }
}

@media print, screen and (max-width:768px) {
  .globalMenuSp {
    list-style: none;
    position: fixed;
    z-index: 5;
    top: 0;
    left: 0;
    background: #fff5f5;
    color: #000;
    transform: translateY(-100%);
    transition: all .1s;
    width: 100%
  }
  .globalMenuSp li {
    position: relative;
    padding: 1px 0 1px 5px;
    border-bottom: 1px dotted #aaa
  }
  .globalMenuSp li:before {
    -moz-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%)
  }
  .globalMenuSp.active {
    transform: translateY(0)
  }
  .navToggle {
    display: block;
    position: fixed;
    right: 5px;
    top: 5px;
    width: 42px;
    height: 47px;
    cursor: pointer;
    z-index: 6;
    background: #f22;
    opacity: .7;
    text-align: center
  }
  .navToggle span {
    display: block;
    position: absolute;
    width: 30px;
    border-bottom: solid 3px #fff;
    -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .35s ease-in-out;
    left: 6px
  }
  .navToggle span:nth-child(1) {
    top: 7px
  }
  .navToggle span:nth-child(2) {
    top: 15px
  }
  .navToggle span:nth-child(3) {
    top: 23px
  }
  .navToggle span:nth-child(4) {
    border: 0;
    color: #eee;
    font-size: 9px;
    font-weight: 700;
    top: 29px
  }
  .navToggle.active span:nth-child(1) {
    top: 18px;
    left: 6px;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    transform: rotate(-45deg)
  }
  .navToggle.active span:nth-child(2), .navToggle.active span:nth-child(3) {
    top: 18px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    transform: rotate(45deg)
  }
  .container {
    padding: 0 1rem
  }
  .md-Section_Title {
    font-size: 1.6rem
  }
  .md-Text {
    font-size: 1.5rem
  }
  .site-FooterNav_Item {
    width: 33.33%
  }
  .site-Header_Top {
    min-height: 7.5rem
  }
  .site-Header_Top:after, .site-Header_Top:before {
    content: '';
    display: table
  }
  .site-Header_Top:after {
    clear: both
  }
  .site-Header_Text_Other .site-Register_Label, .site-Header_Text_Other .site-Register_Number {
    font-size: 1.5rem;
    padding-top: .3rem
  }
  .site-Header_Slogan {
    padding-left: 10rem;
    float: none;
    width: 100%;
  }
  .site-HeaderLogo {
    width: 9rem
  }
  .site-HeaderLogo_Link {
    display: none
  }
  .site-HeaderLogo_Link_sp {
    display: block
  }
  .site-Gnav_Item, .site-Gnav_Item_s, .site-Gnav_Item_t {
    width: 16.66667%
  }
  .site-PageTop_Btn {
    height: 5rem;
    width: 5rem;
    line-height: 5rem
  }
  .md-Sidebar_Btn {
    display: none
  }
  .md-Banner_Item {
    align-items: center;
    width: 48%;
    -webkit-flex-basis: 48%;
    -ms-flex-preferred-size: 48%;
    flex-basis: 48%
  }
  .md-Links_List {
    line-height: 1;
    font-size: 90%;
  }
}

@media print, screen and (max-width:639px) {
  .md-Visual_Image {
    display: none!important
  }
  .md-Visual_Image-SP {
    display: block!important
  }
  .md-Card_Photo {
    max-width: 100%;
    width: 100%;
    float: none;
    margin-right: 0;
    margin-bottom: 1rem
  }
  .md-Page_Head {
    font-size: 1.8rem
  }
  .md-Chart_Image {
    float: none;
    width: 100%;
    max-width: 100%
  }
  .md-Chart_Info {
    float: none;
    width: 100%;
    margin-top: 1rem
  }
  .md-Chart_Panda {
    margin-top: 2rem
  }
  .md-Service_Intro {
    margin-bottom: 1.5rem
  }
  .md-Service_Intro, .md-Service_Note {
    width: 100%;
    float: none
  }
  .md-Poster_Image img, .md-Service_Note_Panda {
    width: 9rem
  }
  .site-FooterNav_Item {
    width: 50%
  }
  .site-HeaderWrapper {
    background: url(../images/header_bg_sp.png)no-repeat center bottom;
    background-size: cover;
    padding-bottom: 5rem;
    max-width: 40pc;
    margin-left: auto;
    margin-right: auto
  }
  .site-Gnav_Link, .site-Gnav_Link_s, .site-Gnav_Link_t {
    padding: 1.2rem 0
  }
  .site-Gnav_Item, .site-Gnav_Item_s, .site-Gnav_Item_t {
    width: 33.3333%
  }
  .site-Gnav_Item:nth-of-type(1), .site-Gnav_Item:nth-of-type(2), .site-Gnav_Item:nth-of-type(3) {
    border-bottom: 1px solid #7f6848
  }
  .site-Gnav_Item_s:nth-of-type(1), .site-Gnav_Item_s:nth-of-type(2), .site-Gnav_Item_s:nth-of-type(3) {
    border-bottom: 1px solid #e0f0bb
  }
  .site-Gnav_Item_t:nth-of-type(1), .site-Gnav_Item_t:nth-of-type(2), .site-Gnav_Item_t:nth-of-type(3) {
    border-bottom: 1px solid #e8e6cd
  }
}

@media print, screen and (max-width:401px) {
  .site-HeaderWrapper {
    padding-bottom: 3rem
  }
}

@media print, screen and (max-width:480px) {
  .md-Conversation_Copy {
    font-weight: 300
  }
  .md-BtnRequest {
    padding: 1rem 3.5rem;
    width: 25rem
  }
  .md-BtnRequest img {
    width: 4rem;
    height: 4rem
  }
  .md-BtnRequest_Text {
    line-height: 4rem;
    font-size: 1.8rem
  }
  .md-BtnRequest2 {
    padding: 1rem 3.5rem;
    width: 25rem
  }
  .md-BtnRequest2 img {
    width: 4rem;
    height: 4rem
  }
  .md-BtnRequest2_Text {
    line-height: 4rem;
    font-size: 1.6rem
  }
  .md-TeacherDetail_Photo {
    width: 100%;
    float: none
  }
  .site-FooterWrapper footer {
    padding: 1rem 0
  }
  .site-FooterNav_Item {
    width: 100%;
    margin-bottom: 2px;
  }
  .site-HeaderWrapper {
    padding-bottom: 3rem
  }
  .site-Gnav_Text {
    font-size: 1.3rem
  }
}

@media print, screen and (min-width:640px) {
  .md-Chart:after, .md-Chart:before {
    content: '';
    display: table
  }
  .md-Chart:after {
    clear: both
  }
}

@media print, screen and (min-width:769px) {
  .site-Body_Inner {
    padding: 0 1.5rem
  }
  .site-Body_Inner:after, .site-Body_Inner:before {
    content: '';
    display: table
  }
  .site-Body_Inner:after {
    clear: both
  }
  .site-Content {
    float: right;
    width: 72rem;
    width: calc(100% - 23.5rem - 1.5rem)
  }
  .md-Sidebar {
    float: left;
    width: 23.5rem;
    margin-right: 1.5rem
  }
}

strong {
  color: #e33;
  background-color: #ff8
}

b {
  font-weight: bold
}

small {
  font-size: 90%;
  line-height: 90%
}

em {
  color: red
}

table {
  width: 99.9%;
  border-collapse: collapse;
  border-spacing: 0
}

table.data {
  border: 6px solid #605444;
  margin: 5px auto 10px
}

table.data td, table.data th {
  vertical-align: middle;
  border: 1px solid #605444;
  padding: 5px
}

table.data th {
  background: #dcd3c6
}

table.green {
  border: 6px solid #55b55c;
  margin: 5px auto 10px
}

table.green td, table.green th {
  vertical-align: middle;
  border: 1px solid #55b55c;
  padding: 5px
}

table.green th {
  background: #e0f0bb
}

.single {
  background: #e0f0bb;
  border-left: solid 8px #55b55c
}

.single, .single_cha {
  margin-top: 5px;
  margin-bottom: 5px;
  padding: .5em
}

.single_cha {
  background: #f3ecda;
  border-left: solid 8px #ab8b38
}

.cha {
  padding: .2em;
  background: #dcd3c6
}

.cha, .midori {
  margin-top: 5px;
  margin-bottom: 5px
}

.midori {
  padding: .2em;
  background: #e0f0bb
}

input.button {
  padding: 10px 20px;
  font-size: 100%;
  background-color: #f79e1b
}

.pagination li {
  list-style: none;
  float: left;
  line-height: 1.6em;
  text-align: center;
  margin: 0 3px 10px
}

.pagination li a {
  display: block;
  padding: 0px 3px;
  height: 1.9em;
  border: 3px solid #968264;
  background: #f5f5ef;
  text-decoration: none
}

.pagination li a:hover {
  background: #e5f687;
  border: 3px solid #97482a
}

.pagination li.current a {
  background: #968264;
  color: #fff
}

.pagination li.prevnext a {
  width: 3em
}

div.caution {
  background-color: #fee;
  outline: 4px solid red;
  text-align: left;
  margin-left: 0;
  margin-top: 10px;
  margin-bottom: 10px;
  padding: 20px 10px 20px 15px;
  color: red;
  font-weight: 700
}

div#regulationBox {
  width: 99.9%;
  height: 5pc;
  border: 2px #666 solid;
  overflow: scroll;
  padding: 10px;
  margin: 15px auto 5px;
  font-size: 9pt;
  font-weight: 400;
  line-height: 18px
}
.input-Email, .input-Password {
    width: 100%;
    background-color: #ececec;
    border: 0;
    outline: 0;
    font-size: 1pc;
    padding: 4px 5px;
}
.pagination li.active span {
    background: #968264;
    color: #fff;
    display: block;
    padding: 0px 3px;
    height: 1.9em;
    border: 3px solid #968264;
    text-decoration: none;
}