@charset "UTF-8";
/* CSS Document */
html {
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  font-size: 100% !important;
}
@media (min-width: 600px) and (max-width: 1120px) {
  html {
    font-size: 1.25vw !important;
  }
}
@media (max-width: 750px) {
  html {
    font-size: 3.6vw !important;
  }
}

body {
  background: url(../images/bg.png) repeat center center;
  position: relative;
  font-family: "游ゴシック Medium", "游ゴシック", "游ゴシック体", "Yu Gothic Medium", "YuGothic", "メイリオ", sans-serif;
  font-size: 100% !important;
  font-weight: 500;
  right: 0 !important;
  color: #5a3921;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  overflow-x: hidden;
}
@media (max-width: 750px) {
  body {
    min-width: auto;
  }
}

a {
  text-decoration-skip-ink: none;
  color: inherit;
  transition: all ease 0.3s;
}
a:hover {
  text-decoration: none;
}

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

@media (min-width: 600px) and (max-width: 1120px) {
  .tbNone {
    display: none !important;
  }
}

@media (min-width: 751px) {
  .pcNone {
    display: none !important;
  }
}

.switch {
  visibility: hidden;
}

.bold {
  font-weight: bold;
}

.pink {
  color: #ff7d70;
}

/* レイアウト関連 */
.outer {
  box-sizing: border-box;
  width: 92%;
  max-width: 1120px;
  background-color: rgba(255, 255, 255, 0.8);
  margin-right: auto;
  margin-left: auto;
}

.inner {
  box-sizing: border-box;
  width: 92%;
  max-width: 980px;
  margin-right: auto;
  margin-left: auto;
}

.bggreen {
  background-color: #65cfc1;
  padding: 6.25em 0;
}
@media (max-width: 750px) {
  .bggreen {
    padding: 10vw 0;
  }
}
.bggreen .outer {
  background-color: white;
}

input, button, select, textarea {
  border: none;
  outline: none;
  border-radius: 5px;
  border: #c4c3c3 1px solid;
  background-color: white;
  font-size: 1.5em;
  padding: 0.5em;
}
@media (max-width: 750px) {
  input, button, select, textarea {

    max-width: 100% !important;
    padding: 0.5em;
  }
}

@media (max-width: 750px) {
  textarea {
    width: 100% !important;
  }
}

input[type=submit], input[type=button] {
  font-family: "游ゴシック Medium", "游ゴシック", "游ゴシック体", "Yu Gothic Medium", "YuGothic", "メイリオ", sans-serif;
  cursor: pointer;
  border: 2px solid #65cfc1;
  background-color: #65cfc1;
  color: #fcf7c6;
  display: block;
  font-size: 2.5em;
  font-weight: bold;
  text-align: center;
  letter-spacing: 0.1em;
  border-radius: 5px;
  max-width: 100% !important;
  padding: 0.2em 0.5em;
  margin-right: auto;
  margin-left: auto;
  margin-top: 1em;
	margin-bottom: 0.5em;
}
input[type=submit]:hover, input[type=button]:hover {
  border: 2px solid #65cfc1;
  background-color: #fcf7c6;
  color: #65cfc1;
  transition: all ease 0.3s;
}
@media (max-width: 750px) {
  input[type=submit], input[type=button] {
    font-size: 1.18em;
    width: 90%;
    padding-top: 0.5em;
    padding-bottom: 0.5em;
	  margin-right: 5%;
  margin-left: 5%;
  }
}

/* ヘッダー部分 */
header.header {
  display: -ms-flexbox;
  /* prefix -> -webkit- */
  display: -webkit-flex;
  -webkit-justify-content: space-between;
  -webkit-align-items: center;
  /* no prefix */
  display: flex;
  justify-content: space-between;
  align-items: center;
  box-sizing: border-box;
  background-color: white;
  position: relative;
  z-index: 9;
  padding: 1.875em 0;
}
@media (max-width: 750px) {
  header.header {
    position: fixed;
    top: 0;
    width: 100%;
    padding: 2.53vw 4vw;
  }
}
header.header .logo {
  width: 6.25em;
  height: 5.125em;
}
@media (max-width: 750px) {
  header.header .logo {
    width: 17.33vw;
    height: 14.13vw;
  }
}
header.header .logo img {
  width: 100%;
}
header.header .menu-trigger,
header.header .menu-trigger span {
  display: inline-block;
  transition: all 0.4s;
  box-sizing: border-box;
}
@media (min-width: 751px) {
  header.header .menu-trigger,
  header.header .menu-trigger span {
    display: none;
  }
}
header.header .menu-trigger {
  position: fixed;
  background-color: #bf1212;
  top: 4.27vw;
  right: 3.87vw;
  width: 10.67vw;
  height: 10.67vw;
  z-index: 10;
}
header.header .menu-trigger span {
  position: absolute;
  right: 2.53vw;
  width: 5.33vw;
  height: 2px;
  background-color: white;
  border-radius: 3px;
}
header.header.active .menu-trigger span {
  background-color: white;
}
header.header .menu-trigger span:nth-of-type(1) {
  top: 2.8vw;
}
header.header .menu-trigger span:nth-of-type(2) {
  top: 5.2vw;
}
header.header .menu-trigger span:nth-of-type(3) {
  top: 7.6vw;
}
header.header.active .menu-trigger span:nth-of-type(1) {
  -webkit-transform: translateY(2.8vw) rotate(-45deg);
  transform: translateY(2.8vw) rotate(-45deg);
}
header.header.active .menu-trigger span:nth-of-type(2) {
  left: 50%;
  opacity: 0;
  -webkit-animation: active-menu-bar02 0.8s forwards;
  animation: active-menu-bar02 0.8s forwards;
}
@-webkit-keyframes active-menu-bar02 {
  header.header.active .menu-trigger span:nth-of-type(2) 100%  {
    height: 0;
  }
}
@keyframes active-menu-bar02 {
  header.header.active .menu-trigger span:nth-of-type(2) 100%  {
    height: 0;
  }
}
header.header.active .menu-trigger span:nth-of-type(3) {
  -webkit-transform: translateY(-2.1vw) rotate(45deg);
  transform: translateY(-2.1vw) rotate(45deg);
}
header.header nav {
  top: 0;
  left: 0;
  transition: 0.3s ease-in-out;
  z-index: 9;
}
@media (max-width: 750px) {
  header.header nav {
    overflow: auto;
    position: fixed;
    width: 100%;
    background-color: rgba(255, 255, 255, 0.9);
    transform: translateX(200%);
    padding: 18.8vw 0;
  }
}
@media (min-width: 751px) {
  header.header nav ul {
    display: -ms-flexbox;
    /* prefix -> -webkit- */
    display: -webkit-flex;
    /* no prefix */
    display: flex;
  }
  header.header nav ul li:not(:last-of-type):after {
    content: "／";
    margin: 0 0.5em;
  }
}
@media (max-width: 750px) {
  header.header nav ul {
    text-align: center;
  }
}
@media (max-width: 750px) {
  header.header nav li:not(:first-of-type) {
    padding-top: 2em;
  }
}
header.header nav a {
  text-decoration: none;
  color: initial;
  font-size: 1.125em;
}
header.header nav a:hover {
  color: #ab2424;
}
@media (max-width: 750px) {
  header.header nav a {
    font-size: 1.2em;
    text-decoration: underline;
  }
}
header.header.active nav {
  transform: translateX(0%);
}
@media (max-width: 750px) {
  header.header.active nav {
    transform: translateX(50vw);
  }
}
@media (max-width: 750px) {
  header.header.active nav {
    transform: translateX(0%);
  }
}

/* フッター部分 */
.totop {
  position: fixed;
  bottom: 3em;
  right: calc(4.375em + 1em);
  z-index: 9;
}
@media (max-width: 750px) {
  .totop {
    right: calc(9.3vw + 1em);
	  bottom: 5em;
  }
}
.totop a {
  box-sizing: border-box;
  display: -ms-flexbox;
  /* prefix -> -webkit- */
  display: -webkit-flex;
  -webkit-justify-content: center;
  -webkit-align-items: center;
  /* no prefix */
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #44c5aa;
  width: 4.375em;
  height: 4.375em;
  border-radius: 50%;
}
.totop a:after {
  content: "";
  display: block;
  width: 1em;
  height: 1em;
  border-top: 1px solid #fcf7c6;
  border-right: 1px solid #fcf7c6;
  margin-top: 0.5em;
  transform: rotate(-45deg);
}
@media (max-width: 750px) {
  .totop a {
    width: 9.3vw;
    height: 9.3vw;
  }
  .totop a:after {
    width: 0.5em;
    height: 0.5em;
    margin-top: 0.25em;
  }
}

footer.footer .copyBox {
  background-color: #44c5aa;
  color: white;
  text-align: center;
  padding: 1em 0;
  font-size: 0.8em;
}
@media (max-width: 750px) {
	footer.footer{margin-bottom:70px;}
  footer.footer .copyBox {
    font-size: 0.6em;
  }
}
footer.footer .copyBox a {
  color: white;
  text-decoration: none;
}
footer.footer .copyBox a:hover {
  opacity: 0.8;
}

/* コンテンツ内 */
.mainVisual {
  background: url(../images/main.jpg) no-repeat center center/cover;
	height: 30em;
}
@media (max-width: 750px) {
  .mainVisual {
    background: url(../images/main_sp.jpg) top center/100%; height: 60vw;
  }
}
.mainVisual .maininner {
  display: -ms-flexbox;
  /* prefix -> -webkit- */
  display: -webkit-flex;
  -webkit-justify-content: center;
  -webkit-align-items: center;
  /* no prefix */
  display: flex;
  justify-content: center;
  align-items: center;

  max-width: 850px;
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 751px) {.only_sp {display:none;}}
@media (max-width: 750px) {
	.only_pc {display:none;}
  .mainVisual .maininner {
    align-items: flex-end;
    max-width: 80vw;
  }
}
.mainVisual h1 {  display: inline-block;}
.mainVisual h1 img {  width: 100%; margin-top:9em; margin-bottom:1em;}
.mainform {max-width:850px; margin:15px auto; text-align: center; }

@media (max-width: 1050px) {
	.mainVisual h1 img {  width: 80%; margin-top:8em; margin-bottom:0.5em;margin-right: 10%; margin-left: 10%;}
}

@media (max-width: 750px) {
.mainVisual h1 img {margin-top:4em;margin-bottom:0.2em;width: 80%; margin-right: 10%; margin-left: 10%; }
.mainform {width:80%; margin:5px 10%; font-size: 0.8em; }
.form_input_input {margin-bottom: 10px;}
}

.linkbox .top {
  background-color: #eac773;
}
.linkbox .wrap {
  display: -ms-flexbox;
  /* prefix -> -webkit- */
  display: -webkit-flex;
  -webkit-justify-content: center;
  -webkit-align-items: center;
  /* no prefix */
  display: flex;
  justify-content: center;
  align-items: center;
}
.linkbox .imgBox_link {
  box-sizing: border-box;
  background: url(../images/linkbox_img.png) no-repeat center center/cover;
  width: 20.625em;
  height: 20.3125em;
}
@media (max-width: 750px) {
  .linkbox .imgBox_link {
    display: none;
  }
}
.linkbox .textBox_link {
  display: -ms-flexbox;
  /* prefix -> -webkit- */
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  /* no prefix */
  display: flex;
  flex-wrap: wrap;
  box-sizing: border-box;
  position: relative;
  width: calc(100% - 20.625em);
  padding: 0 2em;
  text-shadow: 
       2px  2px 1px #fff,
      -2px  2px 1px #fff,
       2px -2px 1px #fff,
      -2px -2px 1px #fff,
       2px  0px 1px #fff,
       0px  2px 1px #fff,
      -2px  0px 1px #fff,
       0px -2px 1px #fff;
}
@media (max-width: 750px) {
  .linkbox .textBox_link {
    display: block;
    width: auto;
    padding: 0;
  }
}
.linkbox .textBox_link:after {
  position: absolute;
  top: -4em;
  right: 2em;
  content: "";
  display: block;
  width: 7.94em;
  height: 7.94em;
  background: url(../images/linkbox_present.png) no-repeat center center/cover;
}
@media (max-width: 750px) {
  .linkbox .textBox_link:after {
    top: -5vw;
    right: -5vw;
    width: 16vw;
    height: 16vw;
  }
}
.linkbox .textBox_link span, .linkbox .textBox_link em, .linkbox .textBox_link div {
  display: block;
  line-height: 1;
  font-style: normal;
}
.linkbox .textBox_link span {
  font-size: 2.125em;
  letter-spacing: 0.05em;
}
@media (max-width: 750px) {
  .linkbox .textBox_link span {
    font-size: 1.26em;
  }
}
.linkbox .textBox_link span:before, .linkbox .textBox_link span:after {
  content: "";
  display: inline-block;
  width: 0.88em;
  height: 1.18em;
  background: url(../images/linkbox_fuki.png) no-repeat left bottom/100%;
}
.linkbox .textBox_link span:before {
  margin-right: 0.2em;
}
.linkbox .textBox_link span:after {
  transform: scale(-1, 1);
  margin-left: 0.2em;
}
.linkbox .textBox_link em {
  font-size: 2.5em;
  font-weight: bold;
  letter-spacing: 0.05em;
  padding: 0.8em 0 0.5em;
}
@media (max-width: 750px) {
  .linkbox .textBox_link em {
    font-size: 1.48em;
  }
}
.linkbox .textBox_link div {
  font-weight: bold;
  background: url(../images/linkbox_under.png) no-repeat center bottom/100%;
  padding-bottom: 1.2em;
}
.linkbox .textBox_link div b {
  font-size: 3.125em;
  color: #ff7d70;
}
@media (max-width: 750px) {
  .linkbox .textBox_link div b {
    font-size: 1.96em;
  }
}
.linkbox .textBox_link div small {
  font-size: 2.625em;
}
@media (max-width: 750px) {
  .linkbox .textBox_link div small {
    font-size: 1.67em;
  }
}
.linkbox .linkbox_inner {
  box-sizing: border-box;
  width: 92vw;
  max-width: 980px;
  margin-right: auto;
  margin-left: auto;
  padding: 3em 0;
}
@media (max-width: 750px) {
  .linkbox .linkbox_inner {
    padding: 10vw 0;
  }
}
.linkbox .content_form {
  text-align: center;
  margin-top: 3em;
}
@media (max-width: 750px) {
  .linkbox .content_form {
    margin-top: 5vw;
    padding-right: 4vw !important;
    padding-left: 4vw !important;
  }
}
.linkbox .content_form div.submit {
  padding: 0 !important;
}
.linkbox .content_form p {
  text-align: center;
  font-size: 0.875em;
  line-height: 1.6;
  padding-top: 1em;
}
.linkbox .input {
  display: -ms-flexbox;
  /* prefix -> -webkit- */
  display: -webkit-flex;
  -webkit-align-items: center;
  /* no prefix */
  display: flex;
  align-items: center;
}
.linkbox .input:not(:first-of-type) {
  padding-top: 1em;
}
@media (max-width: 750px) {
  .linkbox .input {
    display: block;
  }
}
.linkbox .required_color {
  background-color: white !important;
}
@media (max-width: 750px) {
  .linkbox .required_color {
    box-sizing: border-box;
    width: 100%;
  }
}
.linkbox .form_input_label {
  line-height: 1.6;
  font-size: 1.5em;
  font-weight: bold;
  width: 11em;
  color: #44c5aa;
	text-shadow: 
       2px  2px 1px #fff,
      -2px  2px 1px #fff,
       2px -2px 1px #fff,
      -2px -2px 1px #fff,
       2px  0px 1px #fff,
       0px  2px 1px #fff,
      -2px  0px 1px #fff,
       0px -2px 1px #fff;
}
@media (max-width: 750px) {
  .linkbox .form_input_label {
    width: 100%;
    font-size: 1em;
  }
}
.linkbox textarea {
  vertical-align: middle;
}
.linkbox form {
  display: inline-block;
  text-align: left;
}

.form.last .linkbox_inner {
  padding-bottom: 8.5em;
}
@media (max-width: 750px) {
  .form.last .linkbox_inner {
    padding-bottom: 23vw;
  }
}

section {
  position: relative;
}
section .inner {
  padding: 6.25em 0;
}
@media (max-width: 750px) {
  section .inner {
    padding: 10vw 0;
  }
}
section .header {
  text-align: center;
  padding-bottom: 5em;
}
@media (max-width: 750px) {
  section .header {
    padding-bottom: 7.5vw;
  }
}
section .header h2 img {
  width: 23.75em;
}
@media (max-width: 750px) {
  section .header h2 img {
    width: 50vw;
  }
}
section .header p {
  font-size: 1.25em;
  line-height: 1.6;
  padding-top: 1.5em;
}
section .column3 ul {
  display: -ms-flexbox;
  /* prefix -> -webkit- */
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  /* no prefix */
  display: flex;
  flex-wrap: wrap;
  margin-left: -1.25em;
  margin-bottom: -1.25em;
}
@media (max-width: 750px) {
  section .column3 ul {
    margin-left: -1em;
    margin-bottom: -1em;
  }
}
section .column3 li {
  box-sizing: border-box;
  width: calc(40% - 1em);
  margin-bottom: 2.8em;
  margin-left: 5.8em;
}
@media (max-width: 750px) {
  section .column3 li {
    width: calc(50% - 1em);
    margin-left: 1em;
    margin-bottom: 1em;
  }
}
section .column_change ul {
  display: -ms-flexbox;
  /* prefix -> -webkit- */
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  /* no prefix */
  display: flex;
  flex-wrap: wrap;
  margin-left: -1.25em;
  margin-bottom: -1.25em;
}
@media (max-width: 750px) {
  section .column_change ul {
    margin-left: 0;
    margin-bottom: 0;
  }
}
section .column_change li {
  box-sizing: border-box;
  width: calc(40% - 1em);
  margin-bottom: 2.8em;
  margin-left: 5.8em;
}
@media (max-width: 750px) {
  section .column_change li {
    width: 90%;
    margin-left: 5%;
	margin-right:5%;
    margin-bottom: 2em;
  }
}
section .column2 ul {
  display: -ms-flexbox;
  /* prefix -> -webkit- */
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  -webkit-justify-content: center;
  /* no prefix */
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-left: -2.875em;
  margin-bottom: -2.875em;
}
@media (max-width: 750px) {
  section .column2 ul {
    margin-left: -4vw;
    margin-bottom: -4vw;
  }
}
section .column2 li {
  box-sizing: border-box;
  width: calc(50% - 2.875em);
  margin-bottom: 2.875em;
  margin-left: 2.875em;
}
@media (max-width: 750px) {
  section .column2 li {
    width: calc(50% - 4vw);
    margin-bottom: 4vw;
    margin-left: 4vw;
  }
}
section .outer {
  position: relative;
}
section .outer:before, section .outer:after {
  position: absolute;
  content: "";
  display: inline-block;
}
section .outer:before {
  left: 0;
}
section .outer:after {
  right: 0;
}
section.voice .outer:before {
  top: 5em;
  width: 13em;
  height: 8.625em;
  background: url(../images/voice_ill_l.png) no-repeat center center/cover;
}
@media (max-width: 750px) {
  section.voice .outer:before {
    top: 6vw;
    width: 26vw;
    height: 17.25vw;
  }
}
section.voice .outer:after {
  top: 7em;
  width: 9.5em;
  height: 9.9375em;
  background: url(../images/voice_ill_r.png) no-repeat center center/cover;
}
@media (max-width: 750px) {
  section.voice .outer:after {
    top: 8vw;
    width: 14.25vw;
    height: 14.9vw;
  }
}
section.present .outer:before {
  top: 9em;
  width: 9.0625em;
  height: 8.9375em;
  background: url(../images/present_ill_l.png) no-repeat center center/cover;
}
@media (max-width: 750px) {
  section.present .outer:before {
    top: 8vw;
    width: 13.59vw;
    height: 13.4vw;
  }
}
section.present .outer:after {
  top: 5em;
  width: 5.25em;
  height: 7.0625em;
  background: url(../images/present_ill_r.png) no-repeat center center/cover;
}
@media (max-width: 750px) {
  section.present .outer:after {
    top: 6vw;
    width: 7.875vw;
    height: 10.59vw;
  }
}
section.study .outer:before {
  top: 5em;
  width: 14.25em;
  height: 13em;
  background: url(../images/study_ill_l.png) no-repeat center center/cover;
}
@media (max-width: 750px) {
  section.study .outer:before {
    top: 6vw;
    width: 21.375vw;
    height: 19.5vw;
  }
}
section.study .outer:after {
  top: 7em;
  width: 12.4375em;
  height: 8.5em;
  background: url(../images/study_ill_r.png) no-repeat center center/cover;
}
@media (max-width: 750px) {
  section.study .outer:after {
    top: 10vw;
    width: 24.875vw;
    height: 17vw;
  }
}
section.sales .outer:before {
  top: 0;
  width: 21.25em;
  height: 12.5em;
  background: url(../images/sales_ill_l.png) no-repeat center center/cover;
}
@media (max-width: 750px) {
  section.sales .outer:before {
    top: 0;
    width: 21.25vw;
    height: 12.5vw;
  }
}
section.sales .outer:after {
  top: 0;
  width: 21.25em;
  height: 12.5em;
  background: url(../images/sales_ill_l.png) no-repeat center center/cover;
  transform: scale(-1, 1);
}
@media (max-width: 750px) {
  section.sales .outer:after {
    top: 0;
    width: 21.25vw;
    height: 12.5vw;
  }
}
section.teachers .outer:before {
  top: 4em;
  width: 9.8125em;
  height: 11.625em;
  background: url(../images/teachers_ill_l.png) no-repeat center center/cover;
}
@media (max-width: 750px) {
  section.teachers .outer:before {
    top: 7vw;
    width: 14.72vw;
    height: 17.44vw;
  }
}
section.teachers .outer:after {
  top: 7em;
  width: 11.875em;
  height: 13.375em;
  background: url(../images/teachers_ill_r.png) no-repeat center center/cover;
}
@media (max-width: 750px) {
  section.teachers .outer:after {
    top: 5vw;
    width: 17.8125vw;
    height: 20vw;
  }
}
section.voice .box .title {
  line-height: 1.4;
  font-size: 2.1875em;
  border-bottom: 1px dashed #5a3921;
  letter-spacing: 0.05em;
  padding-bottom: 0.3em;
}
section.voice .box .title span {
  color: #ff7d70;
}
@media (max-width: 750px) {
  section.voice .box .title {
    font-size: 1.4em;
    text-align: center;
  }
}
section.voice .box p {
  font-size: 1.125em;
  line-height: 1.78;
  padding: 1em 0 0.5em;
}
@media (max-width: 750px) {
  section.voice .box p {
    font-size: 1em;
  }
}
section.voice .box .name {
  text-align: right;
}
@media (max-width: 750px) {
  section.voice .box .name {
    font-size: 0.9em;
  }
}
section.voice .box_first {
  display: -ms-flexbox;
  /* prefix -> -webkit- */
  display: -webkit-flex;
  -webkit-flex-direction: row-reverse;
  /* no prefix */
  display: flex;
  flex-direction: row-reverse;
  padding-bottom: 3.125em;
}
@media (max-width: 750px) {
  section.voice .box_first {
    display: block;
    padding-bottom: 1.5em;
  }
}
section.voice .box_first .textBox {
  padding-right: 2em;
}
@media (max-width: 750px) {
  section.voice .box_first .textBox {
    padding-top: 1em;
    padding-right: 0;
  }
}
section.voice .box_second {
  display: -ms-flexbox;
  /* prefix -> -webkit- */
  display: -webkit-flex;
  -webkit-justify-content: space-between;
  /* no prefix */
  display: flex;
  justify-content: space-between;
}
@media (max-width: 750px) {
  section.voice .box_second {
    display: block;
  }
}
section.voice .box_second .imgBox {
  max-width: 23.125em;
  width: 100%;
}
section.voice .box_second .imgBox img {
  width: 100%;
}
section.voice .box_third {
  display: -ms-flexbox;
  /* prefix -> -webkit- */
  display: -webkit-flex;
  -webkit-justify-content: flex-end;
  /* no prefix */
  display: flex;
  justify-content: flex-end;
}
@media (max-width: 750px) {
  section.voice .box_third {
    display: block;
  }
}
section.voice .box_third .imgBox {
  max-width: 24.125em;
  width: 100%;
}
section.voice .box_third .imgBox img {
  width: 100%;
}
@media (max-width: 750px) {
  section.voice .box_third .imgBox {
    padding-top: 2em;
  }
}
section.voice .box_second .textBox, section.voice .box_third .textBox {
  width: 100%;
  max-width: 100%;
}
section.voice .box_second .imgBox, section.voice .box_third .imgBox {
  padding-right: 2em;
}
@media (max-width: 750px) {
  section.voice .box_second .imgBox, section.voice .box_third .imgBox {
    width: 70vw;
    padding-right: 0;
    padding-bottom: 1em;
    margin-right: auto;
    margin-left: auto;
  }
	section.voice .box_second .textBox, section.voice .box_third .textBox {margin-bottom: 20px;}
}
section.present .column3 li {
  border: 1px solid #65cfc1;
}
section.present .column3 li:first-of-type .imgBox {
  background: url(../images/present_1.jpg) no-repeat center center/cover;
}
section.present .column3 li:nth-of-type(2) .imgBox {
  background: url(../images/present_2.jpg) no-repeat center center/cover;
}
section.present .column3 li:nth-of-type(3) .imgBox {
  background: url(../images/present_3.jpg) no-repeat center center/cover;
}
section.present .column3 li:nth-of-type(4) .imgBox {
  background: url(../images/present_4.jpg) no-repeat center center/cover;
}

section.present .imgBox {
  display: -ms-flexbox;
  /* prefix -> -webkit- */
  display: -webkit-flex;
  -webkit-justify-content: center;
  /* no prefix */
  display: flex;
  justify-content: center;
  position: relative;
  padding-top: 66.77%;
}
section.present .imgBox .ribon {
  display: -ms-flexbox;
  /* prefix -> -webkit- */
  display: -webkit-flex;
  -webkit-justify-content: center;
  -webkit-align-items: center;
  /* no prefix */
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 0.5em;
  color: white;
  font-size: 1.125em;
  font-weight: bold;
  width: 8.5em;
  height: 1.5em;
  background: url(../images/present_ribon.png) no-repeat center center/cover;
}
@media (max-width: 750px) {
  section.present .imgBox .ribon {
    width: 10em;
    font-size: 0.6em;
    background-size: 100%;
  }
}
section.present .textBox {
  text-align: center;
  padding: 1em;
}
@media (max-width: 750px) {
  section.present .textBox {
    text-align: left;
    padding: 0.5em;
  }
}
section.present .textBox .title {
  letter-spacing: 0;
  color: #44c5aa;
  font-size: 1.3em;
  line-height: 1.36;
}
@media (max-width: 750px) {
  section.present .textBox .title {
    font-size: 1em;
  }
}
section.present .textBox p {
  letter-spacing: 0;
  font-size: 0.875em;
  line-height: 1.7;
  padding-top: 1em;
}
section.present .textBox p span {
  font-weight: bold;
}
@media (max-width: 750px) {
  section.present .textBox p {
    padding-top: 0.5em;
  }
}
section.study .column2 li {
  position: relative;
  background-color: #e9e4c8;
  text-align: center;
  padding: 2em;
  padding-top: 2.5em;
}
section.study .column2 li:first-child, section.study .column2 li:nth-child(2), section.study .column2 li:nth-child(5), section.study .column2 li:nth-child(6) {
  background-color: #ccebe0;
}
@media (max-width: 750px) {
  section.study .column2 li {
    padding: 1em;
    padding-top: 1.5em;
  }
}
section.study .column2 p {
  font-size: 1.375em;
  line-height: 1.6;
}
section.study .column2 p span {
  color: #ff7d70;
  font-weight: bold;
}
@media (max-width: 750px) {
  section.study .column2 p {
    font-size: 1em;
    text-align: left;
  }
}
section.study .column2 .title {
  box-sizing: border-box;
  position: absolute;
  top: -0.8em;
  right: 0;
  left: 0;
  width: 4.56em;
  height: 2.44em;
  background-color: #65cfc1;
  color: white;
  font-size: 1.125em;
  display: block;
  text-align: center;
  padding: 0.3em 0.5em;
  background: url(../images/study_no.png) no-repeat center center/cover;
  margin: auto;
}
@media (max-width: 750px) {
  section.study .column2 .title {
    font-size: 0.8em;
  }
}
section.sales li {
  background-color: #65cfc1;
  padding: 0.3em;
}
section.sales .borderwrap {
  border: white 1px solid;
  text-align: center;
  padding: 1.5em;
}
@media (max-width: 750px) {
  section.sales .borderwrap {
    padding: 1em;
  }
}
section.sales .uriage, section.sales .rieki small {
  color: white;
}
section.sales .rieki {
  padding: 1.5em 0;
}
@media (max-width: 750px) {
  section.sales .rieki {
    padding: 1em 0;
  }
}
section.sales small, section.sales span, section.sales b {
  display: block;
}
section.sales small {
  font-size: 1.25em;
  padding-bottom: 0.3em;
}
@media (max-width: 750px) {
  section.sales small {
    font-size: 1em;
  }
}
section.sales small:after {
  content: "";
  width: 2.5em;
  height: 1px;
  display: block;
  background-color: white;
  margin-right: auto;
  margin-left: auto;
  margin-top: 0.2em;
}
section.sales span {
  font-size: 1.625em;
}
@media (max-width: 750px) {
  section.sales span {
    font-size: 1em;
  }
}
section.sales b {
  font-size: 2.3em;
  color: #fcf7c6;
}
@media (max-width: 750px) {
  section.sales b {
    font-size: 1.3em;
  }
}
section.sales .name {
  display: inline-block;
  background-color: white;
  color: #44c5aa;
  font-size: 1.25em;
  padding: 0.2em 0.5em;
}
@media (max-width: 750px) {
  section.sales .name {
    font-size: 0.9em;
  }
}
section.teachers .teacherswrap > ul > li {
  background-color: #ccebe0;
  padding: 3em;
  padding-top: 2em;
}
@media (max-width: 750px) {
  section.teachers .teacherswrap > ul > li {
    padding: 1em;
  }
}
section.teachers .teacherswrap > ul > li:not(:first-of-type) {
  margin-top: 1em;
}
section.teachers .titlewrap {
  overflow: hidden;
  text-align: center;
}
section.teachers .titlewrap .title {
  position: relative;
  display: inline-block;
  margin: 0 2.5em;
  padding: 0 1em;
  text-align: left;
}
section.teachers .titlewrap .title:before, section.teachers .titlewrap .title:after {
  position: absolute;
  top: 50%;
  content: "";
  width: 400%;
  height: 1px;
  background-color: white;
}
section.teachers .titlewrap .title:before {
  right: 100%;
}
section.teachers .titlewrap .title:after {
  left: 100%;
}
section.teachers .titlewrap .title span {
  position: relative;
  display: inline-block;
  border: 1px solid #44c5aa;
  background-color: white;
  color: #44c5aa;
  font-size: 1.375em;
  padding: 0.3em 1.5em;
}
@media (max-width: 750px) {
  section.teachers .titlewrap .title span {
    font-size: 0.9em;
  }
}
section.teachers .titlewrap .title span:before, section.teachers .titlewrap .title span:after {
  position: absolute;
  top: calc(50% - 2.5px);
  content: "";
  display: inline-block;
  width: 5px;
  height: 5px;
  background-color: #44c5aa;
  border-radius: 50%;
}
section.teachers .titlewrap .title span:before {
  left: 5px;
}
section.teachers .titlewrap .title span:after {
  right: 5px;
}
section.teachers .contentBox {
  display: -ms-flexbox;
  /* prefix -> -webkit- */
  display: -webkit-flex;
  /* no prefix */
  display: flex;
  padding-top: 2em;
}
@media (max-width: 750px) {
  section.teachers .contentBox {
    display: block;
    padding-top: 1em;
  }
}
section.teachers .contentBox .textBox {
  padding-left: 2em;
}
@media (max-width: 750px) {
  section.teachers .contentBox .textBox {
    padding-left: 0;
  }
}
section.teachers .contentBox.rightBox {
  flex-direction: row-reverse;
}
section.teachers .contentBox.rightBox .textBox {
  padding-left: 0;
  padding-right: 2em;
}
@media (max-width: 750px) {
  section.teachers .contentBox.rightBox .textBox {
    padding-right: 0;
  }
}
section.teachers .imgBox {
  max-width: 22.125em;
  width: 50vw;
  height: 100%;
  margin-right: auto;
  margin-left: auto;
}
section.teachers .imgBox img {
  width: 100%;
  height: auto;
}
section.teachers .textBox {
  width: calc(100% - 22.125em);
  line-height: 1.75;
}
@media (max-width: 750px) {
  section.teachers .textBox {
    width: 100%;
  }
}
section.teachers .textBox p:not(:first-of-type) {
  padding-top: 0.5em;
}
section.teachers .textBox .namewrap {
  color: #ff7d70;
  padding-bottom: 1.5em;
}
@media (max-width: 750px) {
  section.teachers .textBox .namewrap {
    text-align: center;
    padding-top: 1em;
    padding-bottom: 1em;
  }
}
section.teachers .textBox .namewrap div {
  border-bottom: 1px dashed #ff7d70;
  padding-bottom: 0.3em;
  margin-bottom: 0.3em;
}
@media (max-width: 750px) {
  section.teachers .textBox .namewrap div {
    border: none;
    font-weight: bold;
    padding-bottom: 0;
    margin-bottom: 0;
  }
}
section.teachers .textBox .namewrap b {
  font-weight: inherit;
  font-size: 2.5em;
}
@media (max-width: 750px) {
  section.teachers .textBox .namewrap b {
    font-size: 1.4em;
  }
}
section.teachers .textBox .namewrap small {
  font-size: 1.625em;
}
@media (max-width: 750px) {
  section.teachers .textBox .namewrap small {
    font-size: 1em;
  }
}
@media (max-width: 750px) {
  section.teachers .textBox .namewrap span {
    line-height: 1.4 !important;
    font-size: 0.9em;
  }
}
section.teachers .textBox .profile {
  display: -ms-flexbox;
  /* prefix -> -webkit- */
  display: -webkit-flex;
  /* no prefix */
  display: flex;
  padding-top: 1.5em;
}
@media (max-width: 750px) {
  section.teachers .textBox .profile {
    display: block;
    padding-top: 1em;
  }
}
section.teachers .textBox .profile dl {
  font-size: 0.875em;
}
section.teachers .textBox .profile dl:last-of-type {
  padding-left: 1em;
}
@media (max-width: 750px) {
  section.teachers .textBox .profile dl:last-of-type {
    padding-top: 1em;
    padding-left: 0;
  }
}
section.teachers .textBox .profile ul {
  padding-left: 1.5em;
}
section.teachers .textBox .profile li {
  list-style-type: disc;
}
section.aboutus .wrapper {
  background-color: white;
  border: #65cfc1 2px solid;
  padding: 3em;
}
@media (max-width: 750px) {
  section.aboutus .wrapper {
    background-color: transparent;
    border: none;
    padding: 0;
  }
}
section.aboutus h2 {
  font-size: 2.875em;
  letter-spacing: 0.05em;
  display: inline-block;
  border-bottom: #65cfc1 2px dashed;
  padding-bottom: 0.2em;
}
@media (max-width: 750px) {
  section.aboutus h2 {
    display: block;
    line-height: 1.6;
    font-weight: bold;
    font-size: 1.7em;
  }
}
section.aboutus .intro img {
  width: 100%;
  max-width: 550px;
  margin-right: auto;
  margin-left: auto;
}
section.aboutus .contentBox {
  display: -ms-flexbox;
  /* prefix -> -webkit- */
  display: -webkit-flex;
  -webkit-flex-direction: row-reverse;
  /* no prefix */
  display: flex;
  flex-direction: row-reverse;
}
@media (max-width: 750px) {
  section.aboutus .contentBox {
    display: block;
  }
}
section.aboutus .contentBox .textBox {
  width: calc(100% - 19.5em);
  padding-left: 2em;
}
@media (max-width: 750px) {
  section.aboutus .contentBox .textBox {
    width: 100%;
    padding-left: 0;
  }
}
section.aboutus .contentBox .textBox p {
  font-size: 1.125em;
  line-height: 1.6;
}
@media (max-width: 750px) {
  section.aboutus .contentBox .textBox p {
    font-size: 1em;
  }
}
section.aboutus .contentBox .imgBox {
  width: 19.5em;
}
@media (max-width: 750px) {
  section.aboutus .contentBox .imgBox {
    width: 100%;
    padding-top: 1em;
    margin-right: auto;
    margin-left: auto;
  }
}
section.aboutus .contentBox .imgBox img {
  width: 100%;
}
section.message {
  position: relative;
  padding-top: 5.5em;
}
@media (max-width: 750px) {
  section.message {
    padding-top: 7.5vw;
  }
}
section.message .inner {
  background-color: white;
}
section.message .ribon {
  font-size: 1.75em;
  font-weight: bold;
  letter-spacing: 0.1em;
  display: inline-block;
  position: relative;
  height: 2em;
  line-height: 2;
  text-align: center;
  background: white;
  color: #44c5aa;
  box-sizing: border-box;
  padding: 0 1.5em;
}
@media (max-width: 750px) {
  section.message .ribon {
    line-height: 2;
    font-size: 1.2em;
  }
}
section.message .ribon:before, section.message .ribon:after {
  position: absolute;
  content: "";
  width: 0px;
  height: 0px;
  z-index: 1;
}
section.message .ribon:before {
  top: 0;
  left: 0;
  border-width: 1em 0px 1em 0.6em;
  border-color: transparent transparent transparent #65cfc1;
  border-style: solid;
}
section.message .ribon:after {
  top: 0;
  right: 0;
  border-width: 1em 0.6em 1em 0px;
  border-color: transparent #65cfc1 transparent transparent;
  border-style: solid;
}
section.message .title {
  color: #fff6a2;
  font-size: 2.25em;
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 1.6;
  padding-top: 1em;
}
@media (max-width: 750px) {
  section.message .title {
    font-size: 1.7em;
    padding-top: 0.5em;
  }
}
section.message .foryou {
  position: absolute;
  top: -5.5em;
  right: 0;
  left: 0;
  width: 20.9375em;
  height: 5.5em;
  background: url(../images/foryou.png) no-repeat center bottom/cover;
  margin: auto;
}
@media (max-width: 750px) {
  section.message .foryou {
    top: -13vw;
    width: 50vw;
    height: 13vw;
  }
}
section.message .header {
  padding-bottom: 3.125em;
}
@media (max-width: 750px) {
  section.message .header {
    padding-bottom: 1em;
  }
}
section.message .message_outer {
  box-sizing: border-box;
  width: 92vw;
  max-width: 980px;
  background: url(../images/message_bk.png) no-repeat top 2em left 2em/cover;
  padding-right: 2em;
  padding-bottom: 2em;
  margin-right: auto;
  margin-left: auto;
}
@media (max-width: 750px) {
  section.message .message_outer {
    background: none;
    padding: 0;
  }
}
section.message .message_inner {
  position: relative;
  box-sizing: border-box;
  width: 92vw;
  max-width: 100%;
  background-color: white;
  margin-left: 0;
  padding: 5em;
}
@media (max-width: 750px) {
  section.message .message_inner {
    padding: 1em;
    padding-bottom: 20em;
  }
}
section.message .message_inner:after {
  position: absolute;
  top: 0;
  right: 0;
  content: "";
  display: block;
  background: url(../images/message_img.png) no-repeat center center/cover;
  width: 23.625em;
  height: 17.43775em;
}
@media (max-width: 750px) {
  section.message .message_inner:after {
    top: auto;
    left: 0;
    bottom: 1em;
    margin: auto;
  }
}
section.message p {
  font-size: 1.25em;
  line-height: 2;
}
section.message p:not(:first-of-type) {
  padding-top: 1em;
}
@media (max-width: 750px) {
  section.message p {
    font-size: 1em;
  }
}

section.kikkake {width:100%;  }
.kikkake .outer {padding:40px 0;}
.kikkake h2{width:100%; text-align: center;font-size: 2.0em; font-weight: bold;margin-bottom: 2em; border: solid 1px #5a3921; padding: 20px;}
.kikkake h2 span{font-size:0.7em; font-weight: normal;}
.kikkake p {width:100%; text-align: center;font-size:130%;line-height: 1.8em;font-weight: bold;}
.f120 {font-size:120%;}
.b {font-weight:bold;}
.u {text-decoration:underline;}
.yb {background-color:#fff3a4;}
@media (max-width: 1020px) {.kikkake img {width:100%;}}
@media (max-width: 750px) {
	.kikkake .outer {padding:0;}
	.kikkake p {width:90%; padding:15px;text-align: left; font-size:100%;}
}

.changewrap { width:100%; border-radius: 21px; box-shadow: 0 0 8px gray; overflow: hidden; position: relative;}
.changewrap img {max-width:100%;}

.popup_wrap input {
display: none;
}
.popup_overlay {
display: flex;
justify-content: center;
overflow: auto;
position: fixed;
top: 0;
left: 0;
z-index: 999;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.7);
opacity: 0;
transition: opacity 0.5s, transform 0s 0.5s;
transform: scale(0);
}

.popup_trigger {
position: absolute;
width: 100%;
height: 100%;
}

.popup_content {
position: relative;
align-self: center;
width: 90%;
max-width: 1000px;
padding: 30px 40px;
box-sizing: border-box;
background: #fff;
line-height: 1.4em;
transition: 0.5s;
text-align: justify;
}

.close_btn {
position: absolute;
top: 10px;
right: 10px;
font-size: 14px;
cursor: pointer;
padding:8px;
background: #f29c9f;
color: #fff;
border-radius:15px;
line-height:14px;
font-weight:bold;
}

.popup_wrap input:checked ~ .popup_overlay {
opacity: 1;
transform: scale(1);
transition: opacity 0.5s;
}

.popup_wrap input:checked ~ .popup_overlay .popup_content{
transform: translateY(50px);
}

.open_btn {
position: relative;
top: 0;
right: 0;
bottom: 0;
left: 0;
display: flex;
justify-content: center;
align-items: center;
width: 200px;
height: 20px;
margin:10px auto;
color: #555;
background:fff;
padding: 10px 16px;
border:solid 1px #ccc;
font-weight: bold;
cursor: pointer;
transition: .3s ease;
}

.open_btn:hover{
background:#f29c9f;
border:solid 1px #f29c9f;
color:#fff;
transition: .3s ease;
}
@media (max-width: 750px) {
.open_btn {
width: 60%;
height: 15px;
margin:10px auto;
	font-size: 0.6em;
	padding: 5px 8px;
}
}
.changedetailbtn {width:100%; text-align: center;}
.changedetailbtn img {width:225px;}
.abouttitle {width:100%; text-align:center;margin-bottom: 20px;}
@media (max-width: 750px) {
	.abouttitle img {max-width:100%;}
	
}


.about {width:95%; margin:30px auto; background-color: #dcf7fe; padding:20px; text-align: left;}
.abouttitle{width:100%; font-size: 120%; color: #1b9cb2; font-weight: bold;text-align: center;}
.about p {padding:20px; line-height: 1.9em;}
.kikkake h3 { margin: 50px 0 20px; border-left: solid 5px #1b9cb2; padding: 5px 0 5px 20px; font-size: 1.8em; font-weight: bold;}
.bn {width:35%; position: fixed; bottom:10px; right: 10px; z-index: 50;}
.bn img {width:100%;}
.textcontent p {text-align: left;}
@media (max-width: 750px) {
	.about {width:90%; margin:20px auto; background-color: #dcf7fe; padding:10px;}
	.about img {width:100%;}
	.about p {padding:0; line-height: 1.9em;}
	.kikkake h3 { margin: 40px 0 15px; border-left: solid 4px #1b9cb2; padding: 2px 0 2px 10px; font-size: 1.3em; font-weight: bold;}
	.img_center {width:100%; }
	.bn {width:100%; position: fixed; bottom:0; right:0;}
	
}

section.btn {margin:0 auto; text-align:center; background-color: #fff;}
@media (max-width: 990px) {
	section.btn .tokuten img {width:100%;}
}
/* フェードイン用のCSS */
.animation {
   opacity: 0;
   transform: translateY(20px);
   transition: all 1.3s 0s ease-out;
 }

