@charset "UTF-8";
/* html body base
===============================================================*/
/*
html ----------------------------------------------------------*/
* {
  margin: 0px;
  padding: 0px;
}

body {
  -webkit-text-size-adjust: none;
  position: relative;
  margin: 0;
  padding: 0;
  background: #ffffff;
  color: #000;
  font-family: "游ゴシック", "Yu Gothic", YuGothic, "メイリオ",
 "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Meiryo, Osaka,
 "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 100%;
}

a:link {
  color: #343434;
  text-decoration: none;
}

a:visited {
  color: #343434;
  text-decoration: none;
}

a:hover {
  color: #343434;
  text-decoration: none;
}

a:active {
  color: #343434;
  text-decoration: none;
}

ul {
  list-style: none;
}

img {
  max-width: 100%;
  height: auto;
  margin: 0px;
  padding: 0px;
  vertical-align: bottom;
}

a {
  outline: none;
  color: #212020;
  text-decoration: none;
}

a:hover {
  -webkit-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}

a:hover {
  opacity: 0.6;
}


.pcn {
	display: none!important;
}


/* footer
===============================================================*/
.footer {
  background: #74bcb3;
}

.footerMenuWrap {
  padding: 50px 0;
  border-bottom: #FFF 1px solid;
}

.footer__inner {
  position: relative;
  max-width: 1000px;
  margin: 0 auto;
}

.footerMenu {
  text-align: center;
}

.footerMenu li {
  display: inline-block;
  margin: 0 20px;
}

.footerMenu li a {
  color: #FFF;
  font-size: 14px;
  line-height: 1;
  text-decoration: none;
}

.footer__copy {
  padding: 15px 0;
  color: #fff;
  font-size: 12px;
  line-height: 1;
  text-align: center;
}

.float_Bth {
  display: none;
}

.pcfloat_Bth {
  /* display: none;*/
  background-color: #fff;
  border-bottom: 1px #000 solid;
  border-top: 1px #000 solid;
  bottom: 0;
  font-weight: 500;
  left: 0;
  padding: 15px 0 18px;
  position: fixed;
  width: 100%;
  z-index: 99999;
}
.pcfloat_Bth__web {
  align-items: center;
  display: flex;
  justify-content: center;
  /* justify-content: space-between; */
  margin: 0 auto;
  /* padding-left: 35px; */
}
.pcfloat_Bth__web a {
  display: block;
  width: 300px;
  padding: 10px 10px 8px;
  box-sizing: border-box;
  background: #db5962;
  color: #FFF;
  text-decoration: none;
  font-size: 14px;
  line-height: 1;
  text-align: center;
  height: 47px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-align-items: center;
  align-items: center;
  webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

/* header
===============================================================*/
.header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 80px;
  background: #fff;
  z-index: 10000;
}

.header__logo {
  margin: 0 auto;
  padding: 21px 0;
  text-align: center;
}

/* layout
===============================================================*/
.inner {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  position: relative;
  max-width: 1200px;
  margin: 0 auto;
}
@media screen and (max-width: 1200px) {
  .inner {
    padding: 0 10px;
  }
}

/* top
===============================================================*/
.top {
  position: relative;
  margin-top: 80px;
  background: url(../images/header.jpg) top center no-repeat;
  background-size: cover;
  height: 820px; /*920px;*/
  overflow: hidden;
}
.top:before {
  background: -moz-linear-gradient(45deg, rgba(133,133,18,0.4) 0%, rgba(115,32,35,0.4) 100%); /* FF3.6-15 */
  background: -webkit-linear-gradient(45deg, rgba(133,133,18,0.4) 0%,rgba(115,32,35,0.4) 100%); /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(45deg, rgba(133,133,18,0.4) 0%,rgba(115,32,35,0.4) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  content: '';
  display: block;
  position: absolute;
  z-index: 2;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
}
.top__heading {
  margin-bottom: 25px;
  color: #fff;
  font-size: 54px;
  line-height: 1.4;
  position: absolute;
  top: 20%;
  left: 10%;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  z-index: 10;
  /*display: none;*/
}
.top__heading2 {
  z-index: 10;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  top: 40%;
  left: -35%;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 350px;
  height: 350px;
  margin: 0 auto;
  border-radius: 100%;
  background: #eb6877;
  /*background: #fff799;
  background: linear-gradient(45deg, #fff799 20%, #f29c9f 80%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff799', endColorstr='#f29c9f', GradientType=1);	*/
  color: #fff;
  margin: 0 auto;
  font-size: 54px;
  font-weight: bold;
  line-height: 1.2;
  text-align: center;
  /*text-shadow: 2px 2px 0 #fff, -2px -2px 0 #fff, -2px 2px 0 #fff, 2px -2px 0 #fff, 0px 2px 0 #fff, -2px 0 #fff;	*/
}
.top__heading2 span {
  text-shadow: none;
  font-size: 22px;
  line-height: 1.4;
  margin-bottom: 5px
}
.top__heading3 {
  margin-bottom: 25px;
  color: #fff;
  font-size: 54px;
  line-height: 1.4;
  position: absolute;
  top: 60%;
  left: 55%;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  text-align: left;
  z-index: 10;
  /*display: none;*/
}
#main-video {
  vertical-align: top;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  z-index: 1;
  display: none;
}
#main-video2 {
  width: 100%;
  height: auto;
  vertical-align: top;
}
@media screen and (max-width: 750px) {
  .top {
    margin-top: 50px;
    padding: 340px 0 180px;
    height: auto;
    background: url(../images/mainbanner.jpeg) top center no-repeat;
	background-size: cover;
}
	
  .top:before {
    /*display: none;*/
  }
  .top__heading {
    font-size: 7vw;
    display: block;
  }
  #main-video {
    display: none;
  }
  #main-video2 {
    display: none;
  }
}

/* intro
===============================================================*/
.intro {
  padding: 100px 80px 50px;
  background: #fdf6ca;
  background: linear-gradient(45deg, #fdf6ca 25%, #fcd4d4 75%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fdf6ca', endColorstr='#fcd4d4',GradientType=1 );
}

.intro__container {
  position: relative;
  padding: 12px;
  background: url(../images/sec1_back.png);
}

.intro__container:before, .intro__container:after {
  position: absolute;
  content: '';
  width: 129px;
  height: 218px;  
  top: 0;
  bottom: 0;
  margin: auto;
}

.intro__container:before {
  left: -74px;
  background: url(../images/intro_img02.png) no-repeat center center;
}

.intro__container:after {
  right: -74px;
  background: url(../images/intro_img03.png) no-repeat center center;
}

.intro__bgWhite {
  padding: 50px 40px 30px;
  background: #fff;
}

.intro__heading {
  position: relative;
  margin-bottom: .7em;
  color: #eb6877;
  font-size: 36px;
  font-weight: bold;
  text-align: center;
}

.intro__heading:after {
  position: absolute;
  top: -130px;
  right: 0;
  left: 0;
  width: 130px;
  height: 100px;
  margin: auto;
  background: url(../images/intro_img01.png) no-repeat;
  content: '';
}

.intro__txt {
  font-size: 20px;
  line-height: 2;
  text-align: center;
}

@media screen and (max-width: 750px) {
  .intro {
    padding: 50px 10px 50px;
  }
  .intro__container {
    padding: 6px;
    background-size: 2.5px;
  }
  .intro__container:before,
  .intro__container:after {
    width: 50px;
    height: 85px;
    bottom: auto;
    top: 20px;
    background-size: 100% auto;
  }
  .intro__container:before {
    left: -18px;
  }
  .intro__container:after {
    right: -18px;
  }
  .intro__bgWhite {
    padding: 30px 25px 30px;
  }
  .intro__heading {
    font-size: 20px;
  }
  .intro__heading:after {
    top: -69px;
    width: 65px;
    height: 50px;
    background-size: cover;
  }
  .intro__txt {
    font-size: 14px;
    text-align: center;
  }  
}





/* experience
===============================================================*/
.experience {
  padding: 70px 0 40px;
}

.experience__heading {
  position: relative;
  margin-bottom: 50px;
  padding-left: 65px;
}

.experience__heading h2 {
  position: relative;
  margin-bottom: .7em;
  color: #eb6877;
  font-size: 30px;
  font-weight: bold;
  line-height: 1.6;
}

.experience__headingImage img {
  position: absolute;
  top: -95px;
  left: -250px;
}

.experience__heading p {
  font-size: 16px;
  line-height: 1.5;
}

.experience__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  /* justify-content: space-between;*/
  justify-content: space-evenly
}
.experience__item {
  width: 40%;
  margin-bottom: 50px;
}
/*.experience__item:nth-child(n + 4) {
  margin-top: 40px;
}*/
.experience__img {
  border: 10px solid #e7a2a2;
}

.experience__img img {
  width: 100%;
}

.experience__txt {
  padding-top: 16px;
  font-size: 14px;
  font-weight: bold;
  line-height: 1.7;
}

.nayami__msgContainer {
  position: relative;
    top: 100px;
    padding: 30px 10px 25px;
    border-radius: 8px;
    background: #e7a2a2;
    width: 1000px;
    display: block;
    margin-left: auto;
    margin-right: auto;
	webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}

.experience__msgContainer {
  position: relative;
  top: 110px;
  padding: 30px 10px 25px;
  border-radius: 8px;
  background: #e7a2a2;
}

.experience__msgContainer:before {
  position: absolute;
  top: -88px;
  right: 0;
  left: 0;
  width: 107px;
  height: 107px;
  margin: auto;
  background: url(../images/top_icon_arrow.png) no-repeat;
  content: '';
}

.experience__msg {
  font-size: 24px;
  font-weight: bold;
  line-height: 2;
  text-align: center;
}

@media screen and (max-width: 1600px) {
  .experience__heading {
    padding-left: 300px;
  }
  .experience__headingImage img {
    left: -20px;
  }
}
@media screen and (max-width: 750px) {
  .experience {
    padding: 50px 0 40px;
  }
  .experience__heading {
    padding-left: 0px;
    margin-bottom: 30px;
  }
  .experience__headingImage img {
    width: 120px;
    height: auto;
    top: -10px;
    left: -15px;
  }
  .experience__heading h2 {
    padding-left: 115px;
    font-size: 18px;
    min-height: 100px;
  }
  .experience__heading p {
    font-size: 14px;
    line-height: 1.75;
  }
  .experience__item {
    width: 100%;
    margin-bottom: 30px;
  }
  .experience__item:nth-child(n + 4) {
    margin-top: 0px;
  }
  .experience__msg {
    font-size: 16px;
  }
	
.nayami__msgContainer {
    top: 40px;
	 width: 100%;
    padding: 30px 10px 25px;
    border-radius: 8px;
  }	
		
	
  .experience__msgContainer {
    top: 40px;
    padding: 30px 10px 25px;
    border-radius: 8px;
  }
  .experience__msgContainer::before {
    top: -58px;
    width: 80px;
    height: 80px;
    background: url(../images/top_icon_arrow.png) no-repeat;
    background-size: cover;
  }
}

  
/* strength
===============================================================*/
.strength {
  padding: 143px 0 76px;
  background: #fbf6f6;
}

.strength__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.strength__item {
  width: 25%;
}

.strength__radiusContainer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 280px;
  height: 280px;
  margin: 0 auto;
  border-radius: 100%;
  background: #fff799;
  background: linear-gradient(45deg, #fff799 20%, #f29c9f 80%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fff799', endColorstr='#f29c9f',GradientType=1 );
}

.strength__txt {
  margin: 0 auto;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.4;
  text-align: center;
}

.strength__txt.strength__txt--smallSize {
  font-size: 12px;
}

.strength__mainTxt {
  margin: 0 auto;
  color: #000;
  font-size: 30px;
  font-weight: bold;
  line-height: 1.4;
  text-align: center;
  text-shadow: 2px 2px 0 #FFF, -2px -2px 0 #FFF, -2px 2px 0 #FFF, 2px -2px 0 #FFF, 0px 2px 0 #FFF, -2px 0 #FFF;
}

.strength__mainTxt span {
  font-size: 48px;
}

@media screen and (max-width: 1200px) {
  .strength__list {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 650px;
    margin: 0 auto;
  }
  .strength__item {
    width: 50%;
    margin: 0 auto;
  }
  .strength__radiusContainer {
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 750px) {
  .strength {
    padding: 80px 0 50px;
  }
  .strength__list {
    width: 100%;
  }
  .strength__item {
    width: 100%;
  }
}

/* lesson
===============================================================*/
.lesson {
  padding: 100px 0;
}

.lesson__container {
  position: relative;
  margin: 0 auto;
  padding: 12px;
  background: url(../images/sec3_back01.png);
}

.lesson__bgWhite {
  margin: 0 auto;
  padding: 45px 40px 35px;
  background: #fff;
}

.lesson__flexWrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 0 auto;
}

.lesson__info {
  width: 47%;
}

.lesson__txt {
  color: #898989;
  font-size: 18px;
  font-weight: bold;
}

.lesson__title {
  padding-top: 5px;
  color: #ec6941;
  font-size: 36px;
  font-weight: bold;
}

.lesson__price {
  margin-top: 12px;
  text-align: right;
}

.lesson__method {
  margin-top: 24px;
  background: url(../images/sec3_back02.png);
}

.lesson__methodTxt {
  padding: 20px 0;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.8;
  text-align: center;
}
.lesson__methodTxt strong {
  color: #eb6877;
}

.lesson__schedule {
  position: relative;
  margin-top: 34px;
  border-radius: 8px;
  background: #fff799;
  background: linear-gradient(45deg, #fff799 20%, #f29c9f 80%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fff799', endColorstr='#f29c9f',GradientType=1 );
}

/*
.lesson__schedule:before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 30px;
  width: 32px;
  height: 37px;
  margin: auto;
  background: url(../images/sec3_icon.png) no-repeat;
  content: '';
}
*/

.lesson__schedule a {
  display: block;
  color: #000;
  font-size: 24px;
  font-weight: bold;
  text-align: center;
  padding: 26px 0;
}

.lesson__img img {
  width: 100%;
}

/* certificate
===============================================================*/
.certificate {
  padding: 105px 0 95px;
  background: #fbf6f6;
}

.certificate__container {
  position: relative;
  max-width: 500px;
  margin: 0 auto;
  text-align: center;
}

.certificate__container img {
  position: relative;
  z-index: 10;
}

.certificate__container:before {
  position: absolute;
  top: -150px;
  right: -250px;
  width: 292px;
  height: 243px;
  background: url(../images/sec4_baloon.png) no-repeat;
  content: '';
  z-index: 1;
}

/* message
===============================================================*/
.message {
  padding: 80px 0 105px;
}

.message__inner {
  max-width: 850px;
  margin: 0 auto;
}

.message__heading {
  color: #f29c9f;
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 30px;
  font-weight: bold;
  text-align: center;
}

.message__txt {
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 16px;
  font-weight: bold;
  line-height: 2.3;
}

.message__msg {
  color: #f29c9f;
  font-size: 20px;
  font-weight: bold;
  line-height: 2.1;
  text-align: center;
}

.message__msg + .message__msg {
  margin-top: 2em;
}






/* voice
===============================================================*/
.voice {
  padding: 110px 0 35px;
  background: #fbf6f6;
}

.voice_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.voice_item {
  width: 23.33%;
  margin-bottom: 50px;
  margin-left: 2.22%;
}
.voice_item:nth-child(4n + 1) {
  margin-left: 0;
}

.voice_img {
  margin-bottom: 5px;
}

.voice_img img {
  width: 100%;
}

.voice_name {
  margin-bottom: 8px;
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 16px;
  font-weight: bold;
  line-height: 2.2;
}

.voice_txt {
  margin-bottom: 16px;
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 12px;
  font-weight: bold;
  line-height: 2;
}

.voice_caution {
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 10px;
  font-weight: bold;
  line-height: 2;
}

@media screen and (max-width: 900px) {
  .voice_item {
    width: 32%;
    margin-bottom: 50px;
    margin-left: 2%;
  }
  .voice_item:nth-child(4n + 1) {
    margin-left: 2%;
  }
  .voice_item:nth-child(3n + 1) {
    margin-left: 0;
  }
}
@media screen and (max-width: 750px) {
  .voice {
    padding: 60px 0 30px;
  }
}
@media screen and (max-width: 500px) {
  .voice_item {
    width: 48%;
    margin-bottom: 50px;
    margin-left: 4%;
  }
  .voice_item:nth-child(4n + 1) {
    margin-left: 4%;
  }
  .voice_item:nth-child(3n + 1) {
    margin-left: 4%;
  }
  .voice_item:nth-child(2n + 1) {
    margin-left: 0;
  }
}


/* media
===============================================================*/
/* media
===============================================================*/
.media {
  padding: 70px 0 65px;
  background: #fbf6f6;
}
.media__heading {
  color: #f29c9f;
  font-size: 24px;
  font-weight: bold;
  line-height: 2;
  text-align: center;
}
.media__container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  /*justify-content: center;*/
  justify-content: space-between;
  max-width: 980px;
  margin: 0 auto;
  padding-top: 56px;
  box-sizing: content-box;
  padding: 56px 20px;
}
.media__img {
  width: 25%;
}
.media__info {
  width: 69.7%;
}
.media__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.media__item {
  height: 187px;
  margin-bottom: 16px;
}
.media__item img {
  width: 100%;
}
.media__item + .media__item {
  margin-left: 17px;
}
@media screen and (max-width: 750px) {
  .media__heading {
    padding: 0 12px;
    font-size: 18px;
  }
  .media__container {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 0px 10px 0 10px;
  }
  .media__list {
    padding: 0 3vw;
  }
  .media__item {
    width: 30%;
    height: auto;
  }
}

/* about
===============================================================*/
.about {
  padding-bottom: 90px;
  background: #fbf6f6;
}

.about__heading {
/*  padding: .9em;*/
  background: #f7dedf;
  color: #ea68a2;
  font-size: 36px;
  font-weight: bold;
  text-align: center;
  height: 120px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-align-items: center;
  align-items: center;
}

.about__headingInner {
  position: relative;
}

.about__headingInner:before {
  position: absolute;
  bottom: -1em;
  left: -200px;
  width: 135px;
  height: 151px;
  background: url(../images/about_chara01.png) no-repeat;
  content: '';
}

.about__firstContainer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 75px;
  padding: 45px 80px 30px 40px;
  background: #fff;
}

.about__info {
  width: 59.7%;
}

.about__infoHeading {
  margin-bottom: 1em;
  color: #f29c9f;
  font-size: 24px;
  font-weight: bold;
}

.about__txt {
  font-size: 16px;
  line-height: 1.9;
}

.about__img {
  width: 32%;
}

.about__img img {
  width: 100%;
}

.about__secondContainer {
  margin-top: 65px;
  padding: 45px 60px 55px 40px;
  background: #fff;
}

.about__bookContainer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
/*
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
*/
  margin-top: 85px;
  padding: 50px 0 42px 65px;
  background: #eee;
}

.about_bookImg {
  position: relative;
  width: 237px;
}
.about_bookImg img.is-baloon {
  position: absolute;
  width: 129px;
  top:-112px;
  left: 46px;
}

.about_bookReview {
  position: relative;
  padding: 0 0 0 30px;
  max-width: 686px;
  box-sizing: border-box;
}

.about_bookReview:before {
  position: absolute;
  top: -224px;
  right: -307px;
  width: 292px;
  height: 243px;
  background: url(../images/about_baloon02.png) no-repeat;
  content: '';
}

.about_baloon {
  display: none;
}

.about_baloon span {
  font-size: 12px;
  font-weight: normal;
}


@media screen and (max-width: 1470px) {
  .about_bookReview:before {
    top: -254px;
    right: -50px;
  }
}

@media screen and (max-width: 1360px) {
  body {
    color: #000;
  }
/*  .about_bookReview:before {
    display: none;
  }
  .about_baloon {
    display: block;
    margin: 0 auto;
    padding: .6em 1em;
    border: 3px dotted #000;
    border-radius: 12px;
    font-size: 24px;
    font-weight: bold;
  }*/
}
@media screen and (max-width: 1200px) {
  .about__bookContainer {
    padding: 50px 30px 42px 30px;
    box-sizing: border-box;
  }
  .about_bookImg {
    width: 30%;
  }
  .about_bookReview {
    width: 70%;
    padding-left: 20px;
  }
}

@media screen and (max-width: 960px) {
  .about__firstContainer {
    padding: 45px 40px 30px 40px;
  }
  .about__secondContainer {
    padding: 30px 40px;
  }
  .about__bookContainer {
    padding: 50px 12px 50px;
  }
  .about_bookImg {
    width: 200px;
    margin: 0 auto 30px;
    text-align: center;
  }
  .about_bookImg img.is-baloon {
    width: 80px;
    top:-64px;
    left: -23px;
  }
  .about_bookReview {
    width: 100%;
    margin: 0 auto 30px;
    padding: 0;
    text-align: center;
  }
  .about_bookReview:before {
    top: -410px;
    right: -107px;
    left: 0;
    margin: auto;
    width: 150px;
    height: 125px;
    background: url(../images/about_baloon02.png) no-repeat;
    background-size: 100% auto;
  }
}
@media screen and (max-width: 768px) {
  .about__info {
    width: 100%;
    margin-bottom: 50px;
  }
  .about__img {
    width: 100%;
  }
}
@media screen and (max-width: 750px) {
  .about {
    padding-bottom: 50px;
  }
  .about__heading {
    font-size: 20px;
    line-height: 1.4;
    height: 80px;
  }
  .about__headingInner:before {
    bottom: -26px;
    left: -83px;
    width: 79px;
    height: 89px;
    background-size: cover;
  }
  .about__firstContainer {
    margin-top: 45px;
    padding: 20px 15px 15px;
  }
  .about__secondContainer {
    padding: 30px 10px;
  }
  .about_baloon {
    font-size: 18px;
  }
  .about__info {
    margin-bottom: 30px;
  }
  .about__infoHeading {
    margin-bottom: 13px;
    font-size: 18px;
  }
  .about__txt {
    font-size: 14px;
    line-height: 1.8;
  }
  .about__bookContainer {
    margin-top: 50px;
    padding: 50px 12px 20px;
  }
}
@media screen and (max-width: 375px) {
/*  .about__headingBr {
    display: none;
  }*/
}
/* qualification
===============================================================*/
.qualification {
  padding-bottom: 70px;
  background: #fef9e1;
}

.qualification__heading {
/*
  padding: .9em;
*/
  background: #fbefb6;
  color: #ea68a2;
  font-size: 36px;
  font-weight: bold;
  text-align: center;
  height: 120px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-align-items: center;
  align-items: center;
}

.qualification__headingInner {
  position: relative;
}

.qualification__headingInner:before {
  position: absolute;
  bottom: -1em;
  left: -180px;
  width: 144px;
  height: 151px;
  background: url(../images/qualification_chara01.png) no-repeat;
  content: '';
}

.qualification__container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 75px;
  padding: 45px 40px 30px;
  background: #fff;
}

.qualification__info {
  width: 51%;
}

.qualification__infoHeading {
  margin-bottom: 1em;
  color: #f29c9f;
  font-size: 24px;
  font-weight: bold;
}

.qualification__txt {
  font-size: 16px;
  line-height: 1.9;
}

.qualification__txt + .qualification__txt {
  margin-top: 30px;
}

.qualification__img {
  width: 44.6%;
}
@media screen and (max-width: 1200px) {
  .qualification__headingInner:before {
    left: -154px;
    bottom: -6px;
  }
  .qualification__container {
    padding: 45px 40px 30px 40px;
  }
}
@media screen and (max-width: 750px) {
  .qualification__container {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .qualification__info {
    width: 100%;
    margin-bottom: 30px;
  }
  .qualification__img {
    width: 100%;
    margin: 0 auto;
    text-align: center;
  }
  
  
  .qualification {
    padding-bottom: 50px;
  }
  .qualification__heading {
    font-size: 20px;
    line-height: 1.2;
    height: 80px;
  }
  .qualification__headingInner:before {
    bottom: -4px;
    left: -93px;
    width: 87px;
    height: 89px;
    background-size: cover;
  }
  .qualification__container {
    margin-top: 45px;
    padding: 25px 15px 15px;
  }
  .qualification__txt {
    font-size: 14px;
    line-height: 1.75;
  }
  .qualification__txt + .qualification__txt {
    margin-top: 20px;
  }
}


/* 特典
===============================================================*/
.t_Heading {
  font-weight: bold;
  background: #ea68a2;
  color: #ffffff;
  padding: 5px 10px;
  border-radius: 5px;
  margin-right: 10px;
  font-size: 26px;
}
.content__tokutenin {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  /* justify-content: space-between; */
  justify-content: space-evenly;
  margin: 0 auto;
  margin-top: 75px;
}
.content__tokuten__item {
  position: relative;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.7;
  width: 40%;
  float: left;
}
.content__tokuten__item2 {
  position: relative;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.4;
  width: 60%;
  float: left;
  webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding-left: 20px;
}
.toku_bigft {
  margin-bottom: 1em;
  color: #ea68a2;
  font-size: 30px;
  font-weight: bold;
}
.content__tokuten__item:before {
  position: relative;
  content: none;
}
.content__tokuten {
  width: 45%;
  border-radius: 20px;
  background: #fff;
  height: 310px;
  margin-bottom: 50px;
}
.content__tokuten .content__item {
  width: 80%
}
.content__tokuten.content__tokuteniner {
  -webkit-box-shadow: 0 0 30px -5px #8aaf2f;
  box-shadow: 0 0 30px -5px #8aaf2f;
}
.tokuten2 {
  position: relative;
  padding: 90px 0 145px;
  background: #fff899;
}
.tokuten2:before {
  position: absolute;
  top: -53px;
  right: 0;
  left: 0;
  width: 107px;
  height: 107px;
  margin: auto;
  background: url(../images/top_icon_arrow.png) no-repeat;
  content: '';
}
.tokuten2__container {
  padding-top: 65px;
}
.tokuten2__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 45px 45px 40px;
  background: #fff;
  margin-bottom: 50px;
}
.tokuten2__info {
  width: 61.3%;
}
.tokuten2__title {
  font-size: 26px;
  font-weight: bold;
  margin-bottom: 50px;
  color: #ea68a2
}
.tokuten__list {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
  margin: 0 auto;
  padding: 0px 10px 40px 60px;
  text-align: center;
  z-index: 10;
}
.tokuten__item {
  position: relative;
  font-size: 18px;
  letter-spacing: 0.01em;
  line-height: 1.6;
  text-align: left;
}
.tokuten__item:before {
  position: absolute;
  top: 15%;
  left: -50px;
  width: 41px;
  height: 31px;
  background: url(../images/recommend_icon.png) no-repeat;
  content: '';
  background-size: 80%;
}
/* 悩み
===============================================================*/
.worries {
  padding: 180px 0 95px;
}
.worries img {
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 60%;
}
.worries__msg {
  padding-top: 1em;
  font-size: 30px;
  font-weight: bold;
  line-height: 2;
  text-align: center;
}

/* content
===============================================================*/
.content {
  padding-bottom: 80px;
  background: #f7fce9;
}

.content__heading {
/*  padding: .9em;*/
  background: #e3f5b7;
  color: #ea68a2;
  font-size: 36px;
  font-weight: bold;
  text-align: center;
  height: 120px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-align-items: center;
  align-items: center;
}

.content__heading2 {
  /*  padding: .9em;*/
  background: #e3f5b7;
  color: #ea68a2;
  font-size: 36px;
  font-weight: bold;
  text-align: center;
  height: 120px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-align-items: center;
  align-items: center;
}
.content__heading2 span {
  font-size: 24px
}

.content__headingInner {
  position: relative;
}

.content__headingInner:before {
  position: absolute;
  bottom: -1em;
  left: -140px;
  width: 135px;
  height: 151px;
  background: url(../images/content_chara01.png) no-repeat;
  content: '';
}

.content__container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  max-width: 900px;
  margin: 0 auto;
  margin-top: 75px;
}

.content__sbsContainer {
  width: 60%;
  border-radius: 16px;
  background: #fff;
}

.content__sbsContainer.content__sbsContainer--online {
  -webkit-box-shadow: 0 0 30px -5px #8aaf2f;
          box-shadow: 0 0 30px -5px #8aaf2f;
}

.content__sbsContainer.content__sbsContainer--day {
  -webkit-box-shadow: 0 0 30px -5px #015881;
          box-shadow: 0 0 30px -5px #015881;
}

.content__sbsHeading {
  position: relative;
  padding: 30px 0 25px;
  border-radius: 16px 16px 0 0;
  color: #fff;
  font-size: 30px;
  text-align: center;
}

.content__sbsHeading.content__sbsHeading--online {
  background: #89c997;
}

.content__sbsHeading.content__sbsHeading--day {
  background: #7ecef4;
}

.content__sbsHeading.content__sbsHeading--day:after {
  position: absolute;
  right: 21%;
  bottom: 12px;
  color: #fff;
  font-size: 12px;
  content: '＊スクーリング選択者の方';
}

.content__sbsHeading span {
  margin-right: 18px;
  padding: 3px 10px;
  border-radius: 8px;
  background: #fff;
  font-size: 20px;
  line-height: 45px;
  vertical-align: middle;
}

.content__sbsHeading.content__sbsHeading--online span {
  color: #29af47;
}

.content__sbsHeading.content__sbsHeading--day span {
  color: #439fcb;
}

.content__infoContainer {
  padding: 35px 30px;
}

.content__txt {
  font-size: 14px;
  font-weight: bold;
}

.content__txt.content__txt--minHeight {
  min-height: 42px;
}

.content__title {
  padding: 20px 0;
  font-size: 20px;
  font-weight: bold;
}

.content__item {
  position: relative;
  font-size: 14px;
  font-weight: bold;
  line-height: 1.7;
}

.content__item:before {
  position: relative;
  content: '・';
}
@media screen and (max-width: 1200px) {
  .content__container {
    padding: 0 10px;
  }
}
@media screen and (max-width: 750px) {
  .content__heading {
    font-size: 20px;
    line-height: 1.4;
    height: 80px;
  }
  .content__headingInner:before {
    bottom: -26px;
    left: -60px;
    width: 48px;
    height: 88px;
    background-size: cover;
  }
.content__heading2 .htokuten {
    font-size: 34px;
    line-height: 1.4;
    height: 180px;
  }
  .content__heading2 span .htokuten2 {
    font-size: 16px;
  }
	
.spn {
	display: none!important
}
.pcn {
	display: block!important;
}	
}
/* open
===============================================================*/
.open {
  padding-bottom: 90px;
  background: #fbf6f6;
}

.open__heading {
/*
  padding: .9em;
*/
  background: #f7dedf;
  color: #ea68a2;
  font-size: 36px;
  font-weight: bold;
  text-align: center;
  height: 120px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-align-items: center;
  align-items: center;
}

.open__headingInner {
  position: relative;
}
.open__headingInner br {
  display: none;
}
.open__headingInner:before {
  position: absolute;
  bottom: -1em;
  left: -160px;
  width: 131px;
  height: 150px;
  background: url(../images/open_chara01.png) no-repeat;
  content: '';
}

.open__container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 75px;
}

.open__imgList {
  width: 45.9%;
}

.open__imgList img {
  width: 100%;
}

.open__imgItem + .open__imgItem {
  padding-top: 65px;
}

.open__info {
  width: 51%;
}

.open__infoHeading {
  margin-bottom: 1em;
  padding-bottom: 5px;
  border-bottom: 1px solid #ddd;
  color: #ea68a2;
  font-size: 24px;
  font-weight: bold;
}

.open__name {
  padding-bottom: 22px;
  font-size: 18px;
  font-weight: bold;
}

.open__txt {
  font-size: 16px;
  line-height: 1.9;
}

.open__marker {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, #f7dedf));
  background: linear-gradient(transparent 60%, #f7dedf 60%);
}

.open__msg {
  margin: 1em auto;
  color: #ea68a2;
  font-size: 18px;
  font-weight: bold;
  line-height: 2;
}
@media screen and (max-width: 960px) {
  .open__headingInner {
    line-height: 1.4;
  }
  .open__headingInner br {
    display: inline;
  }
    .open__headingInner:before {
    bottom: -10px;
    left: -139px;
  }
}
@media screen and (max-width: 750px) {
/*  .open__headingInner:before {
    left: -240px;
  }*/
  .open__heading {
    font-size: 20px;
    line-height: 1.4;
    height: 80px;
  }
  .open__headingInner:before {
    position: absolute;
    bottom: -12px;
    left: -78px;
    width: 77px;
    height: 88px;
    background-size: cover;
    content: '';
  }
  .open__container {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-flow: row-reverse wrap-reverse;
            flex-flow: row-reverse wrap-reverse;
    margin-top: 45px;
  }
  .open__imgList {
    width: 100%;
  }
  .open__imgItem + .open__imgItem {
    padding-top: 20px;
  }
  .open__info {
    width: 100%;
    margin-bottom: 20px;
    box-sizing: border-box;
    padding: 0 10px;
  }
  .open__infoHeading {
    margin-bottom: 15px;
    padding-bottom: 13px;
    font-size: 18px;
  }

  .open__name {
    padding-bottom: 10px;
    font-size: 18px;
    font-weight: bold;
  }

  .open__txt {
    font-size: 14px;
    line-height: 1.9;
  }
}
@media screen and (max-width: 640px) {
  .open {
    padding-bottom: 50px;
  }
/*  .open__heading {
    font-size: 28px;
  }
  .open__headingInner:before {
    display: none;
  }
  .open__infoHeading {
    font-size: 20px;
  }*/
}
@media screen and (max-width: 375px) {
/*  .open__headingBr {
    display: none;
  }*/
}
/* recommend
===============================================================*/
.recommend {
  padding: 185px 0 95px;
}

.recommend__list {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  max-width: 850px;
  margin: 0 auto;
  padding: 60px 100px 40px 188px;
  border: 10px solid #fff799;
  background: #fefdef;
  text-align: center;
  z-index: 10;
}

.recommend__list:before {
  position: absolute;
  top: -150px;
  left: -200px;
  width: 292px;
  height: 243px;
  background: url(../images/recommend_baloon.png) no-repeat;
  content: '';
  z-index: 1;
}

.recommend__item {
  position: relative;
  font-size: 24px;
  letter-spacing: 0.01em;
  line-height: 2;
  text-align: left;
}

.recommend__item:before {
  position: absolute;
  top: 8px;
  left: -60px;
  width: 41px;
  height: 31px;
  background: url(../images/recommend_icon.png) no-repeat;
  content: '';
}

.recommend__msg {
  padding-top: 1em;
  font-size: 30px;
  font-weight: bold;
  line-height: 2;
  text-align: center;
}

.recommend__msg span {
  color: #ea68a2;
  font-size: 36px;
}

@media screen and (max-width: 1200px) {
  .recommend__list:before {
    top: -210px;
    left: 0;
    margin: auto;
  }
}
@media screen and (max-width: 900px) {
  .recommend {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 155px 10px 95px;
  }
  .recommend__list {
    padding: 60px 0 40px 60px;
  }
  .recommend__item {
    max-width: 600px;
    margin: 0 auto;
  }
}
@media screen and (max-width: 750px) {
  .recommend {
    padding: 80px 10px 60px;
  }
  .recommend__list {
    padding: 40px 15px 35px 50px;
    font-weight: bold;
  }
  .recommend__list:before {
    top: -120px;
    width: 180px; /*292*/
    height: 150px; /*243*/
    background-size: contain;
  }
  .recommend__item {
    max-width: 600px;
    font-size: 16px;
    line-height: 1.75
  }
  .recommend__item + .recommend__item {
    margin-top: 10px;
  }
  .recommend__item:before {
    top: 6px;
    left: -34px;
    width: 20.5px;
    height: 15.5px;
    background-size: contain;
  }
  .recommend__msg {
    font-size: 16px;
  }
  .recommend__msg span {
    font-size: 24px;
  }
}

/* flow
===============================================================*/
.flow {
  position: relative;
  padding: 90px 0 145px;
  background: #fff899;
  background: -webkit-gradient(linear, left top, left bottom, from(#fff899), to(#fbf6f6));
  background: linear-gradient(to bottom, #fff899 0%, #fbf6f6 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fff899', endColorstr='#fbf6f6',GradientType=0 );
}

.flow:before {
  position: absolute;
  top: -53px;
  right: 0;
  left: 0;
  width: 107px;
  height: 107px;
  margin: auto;
  background: url(../images/top_icon_arrow.png) no-repeat;
  content: '';
}

.flow__inner {
  max-width: 900px;
  margin: 0 auto;
}

.flow__heading {
  color: #ea68a2;
  font-size: 36px;
  text-align: center;
}

.flow__container {
  padding-top: 65px;
}

.flow__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 45px 45px 40px;
  background: #fff;
  -webkit-box-shadow: 0 0 40px 14px #f6c4c3;
          box-shadow: 0 0 40px 14px #f6c4c3;
}

.flow__item:after {
  position: absolute;
  right: 0;
  bottom: -42px;
  left: 0;
  width: 0px;
  height: 0px;
  margin: auto;
  border-width: 42px 28px 0 28px;
  border-style: solid;
  border-color: #fff transparent transparent transparent;
  content: "";
}

.flow__item + .flow__item {
  margin-top: 85px;
}

.flow__info {
  width: 61.3%;
}

.flow__title {
  font-size: 24px;
  font-weight: bold;
}

.flow__txt {
  font-size: 16px;
  line-height: 1.8;
}

.flow__txt span {
  font-weight: bold;
}

.flow__img {
  width: 37%;
}

.flow__img img {
  width: 100%;
}

.flow__certificateContainer {
  width: 383px;
}

.flow__certificateTitle {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-bottom: 26px;
  padding: 8px;
  border-radius: 22px;
  background: #f8daeb;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
}

.flow__certificateItem {
  margin-top: .6em;
  font-size: 16px;
  text-align: center;
}

@media screen and (max-width: 900px) {
  .flow {
    padding: 90px 0 95px;
  }
  .flow__inner {
    padding: 0 10px;
  }
  .flow__container {
    padding-top: 30px;
  }
}
@media screen and (max-width: 750px) {
  .flow {
    padding: 60px 0 95px;
  }  
  .flow__heading {
    font-size: 22px;
    line-height: 1.5;
  }
  .flow::before {
    top: -40px;
    width: 80px;
    height: 80px;
    background-size: cover;
  }
  .flow__container {
    padding-top: 20px;
  }
  .flow__item {
    padding: 20px 15px 15px;
  }
  .flow__item::after {
    bottom: -30px;
    border-width: 30px 18px 0 18px;
  }
  .flow__item + .flow__item {
    margin-top: 60px;
  }
  .flow__info {
    width: 100%;
  }
  .flow__title {
    font-size: 18px;
    margin-bottom: 10px;
  }
  .flow__txt {
    font-size: 14px;
    line-height: 1.8;
  }
  .flow__img {
    width: 100%;
    margin: 0 auto;
    padding-top: 20px;
  }
  .flow__certificateContainer {
    width: 100%;
  }
  .flow__certificateTitle {
    width: 100%;
  }
}



/* access
===============================================================*/
.access {
  background: #fef9e1;
}

.access__heading {
/*
  padding: .9em;
*/
  background: #fbefb6;
  color: #ea68a2;
  font-size: 36px;
  font-weight: bold;
  text-align: center;
  height: 120px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-align-items: center;
  align-items: center;
}

.access__headingInner {
  position: relative;
}

.access__headingInner:before {
  position: absolute;
  bottom: -1em;
  left: -180px;
  width: 144px;
  height: 151px;
  background: url(../images/access_chara01.png) no-repeat;
  content: '';
}
.access__headingInner br {
  display: none;
}

.access__inner {
  max-width: 1100px;
  margin: 0 auto;
}

.access__list {
  padding: 65px 0 100px;
}

.access__item {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 45px 45px 40px;
  background: #fff;
}

.access__item + .access__item {
  margin-top: 40px;
}

.access__info {
  width: 50%;
}

.access__title {
  margin-bottom: 30px;
  color: #ec92c4;
  font-size: 30px;
  font-weight: bold;
  line-height: 2;
}

.access__detail {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.access__detailList li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.access__detailList li + li {
  margin-top: 12px;
}

.access__detailListTag {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  min-width: 80px;
  min-height: 30px;
  border-radius: 8px;
  background: #32b16c;
  color: #fff;
  font-size: 14px;
  font-weight: bold;
  line-height: 30px;
  text-align: center;
}

.access__detailListText {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 6px 0 4px 15px;
  font-size: 16px;
  line-height: 1.4;
  text-align: left;
}

.access__detailListText a {
  color: #000;
  text-decoration: underline;
}

.access__detailListText.access__detailListText--icon {
  position: relative;
}

.access__detailListText.access__detailListText--icon a:after {
  position: absolute;
  top: 9px;
  right: -20px;
  width: 14px;
  height: 14px;
  background: url(../images/access_icon_arrow.png) no-repeat;
  content: '';
}

.access__map {
  width: 46%;
}

@media screen and (max-width: 750px) {
  .access__heading {
    font-size: 20px;
    line-height: 1.4;
    height: 80px;
  }
  .access__headingInner:before {
    bottom: -25px;
    left: -84px;
    width: 81px;
    height: 89px;
    background-size: cover;
  }  
  .access__list {
    padding: 40px 0 60px;
  }
  .access__item {
    padding: 25px 10px 20px;
  }
  .access__info {
    width: 100%;
  }
  .access__title {
    text-align: center;
    margin-bottom: 20px;
    font-size: 20px;
    line-height: 1.5;
  }
  .access__detailList {
    width: 100%;
  }
  .access__detailList li {
    display: block;
  }
  .access__detailList li + li {
    margin-top: 20px;
  }
  .access__detailListTag {
    width: 100%;
    border-radius: 0;
    font-size: 14px;
  }
  .access__detailListText {
    padding: 10px 0 4px;
    font-size: 14px;
  }
  .access__detailListText.access__detailListText--icon a:after {
    top: 11px;
    right: 0px;
    left: 160px;
  }
  .access__map {
    width: 100%;
    height: 300px;
    margin-top: 20px;
  }
}
@media screen and (max-width: 640px) {
/*  .access__heading {
    font-size: 28px;
  }
  .access__headingInner:before {
    display: none;
  }*/
}

/* campaign
===============================================================*/
.campaign {
  padding: 75px 0 140px;
}

.campaign__inner {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  max-width: 740px;
  margin: 0 auto;
}

.campaign__price {
  margin: 0 auto;
  font-size: 24px;
  text-align: center;
  text-decoration: line-through;
}

.campaign__saleContainer {
  position: relative;
  margin-top: 125px;
  padding: 45px 0 35px;
  border: 10px solid #f8daeb;
  text-align: center;
}

.campaign__saleContainer:before {
  position: absolute;
  top: -98px;
  right: 0;
  left: 0;
  width: 107px;
  height: 107px;
  margin: auto;
  background: url(../images/top_icon_arrow.png) no-repeat;
  content: '';
}

.campaign__caution {
  padding-top: 25px;
  font-size: 18px;
  text-align: center;
}

.campaign__apply {
  width: 450px;
  margin: 0 auto;
  margin-top: 70px;
  border-radius: 40px;
  background: #fff799;
  background: linear-gradient(135deg, #fff799 33%, #f29c9f 66%);
  text-align: center;
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fff799', endColorstr='#f29c9f',GradientType=1 );
}

.campaign__apply a {
  display: inline-block;
  padding: 25px 10px;
  font-size: 20px;
  font-weight: bold;
  text-align: center;
}

.campaign__pay {
  padding-top: 30px;
  font-size: 14px;
  text-align: center;
}

/* advice
===============================================================*/
.advice {
  padding-bottom: 110px;
  background: #f7fce9;
}

.advice__heading {
/*
  padding: .9em;
*/
  background: #e3f5b7;
  color: #ea68a2;
  font-size: 36px;
  font-weight: bold;
  text-align: center;
  height: 120px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-align-items: center;
  align-items: center;
}

.advice__headingInner {
  position: relative;

}

.advice__headingInner:before {
  position: absolute;
  bottom: -1em;
  left: -214px;
  width: 207px;
  height: 191px;
  background: url(../images/advice_chara01.png) no-repeat;
  content: '';
}
.advice__headingInner br {
  display: none;
}
.advice__container {
  padding-top: 90px;
}

.advice__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.advice__item {
  width: 23.3%;
}

.advice__name {
  margin-top: 14px;
  font-size: 16px;
  font-weight: bold;
}

.advice__txt {
  min-height: 96px;
  margin-top: 12px;
  font-size: 12px;
  font-weight: bold;
  line-height: 2;
}

.advice__detail {
  width: 100%;
  margin: 0 auto;
  margin-top: 16px;
  border-radius: 20px;
  background: #f29c9f;
  text-align: center;
}

.advice__detail a {
  display: inline-block;
  width: 100%;
  padding: 10px 0;
  color: #fff;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
}
@media screen and (max-width: 805px) {
  .advice__headingInner {
    line-height: 1.4;
  }
  .advice__headingInner br {
    display: inline;
  }
  .advice__headingInner::before {
    bottom: -6px;
  }
}
@media screen and (max-width: 750px) {
  .advice {
    padding-bottom: 60px;
  }
  .advice__heading {
    font-size: 20px;
    line-height: 1.4;
    height: 80px;
  }
  .advice__headingInner::before {
    bottom: -11px;
    left: -120px;
    width: 121px;
    height: 112px;
    background-size: cover;
  }
  .advice__container {
    padding-top: 40px;
  }
  .advice__item {
    width: 48%;
    margin-bottom: 50px;
  }
  .advice__img img {
    width: 100%;
  }
  .advice__txt {
    min-height: auto;
  }
}
@media screen and (max-width: 480px) {
/*  .advice__heading {
    font-size: 28px;
  }
  .advice__headingInner:before {
    display: none;
  }*/
  .advice__item {
    width: 100%;
  }
}

/* question
===============================================================*/
.question {
  padding-bottom: 90px;
  background: #fbf6f6;
}

.question__heading {
/*
  padding: .9em;
*/
  background: #f7dedf;
  color: #ea68a2;
  font-size: 36px;
  font-weight: bold;
  text-align: center;
  height: 120px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-align-items: center;
  align-items: center;
}

.question__headingInner {
  position: relative;
}

.question__headingInner:before {
  position: absolute;
  bottom: -1em;
  left: -214px;
  width: 158px;
  height: 158px;
  background: url(../images/question_chara01.png) no-repeat;
  content: '';
}
.question__headingInner br {
  display: none;
}

.question__container {
  padding-top: 70px;
}

.question__container dl {
  margin-bottom: 30px;
}

.question__container dt {
  padding: 10px 20px;
  background: #f29c9f;
  color: #fff;
  font-size: 24px;
  font-weight: bold;
  line-height: 2;
}

.question__container dd {
  padding: 40px 20px 35px;
  background: #fff;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.7;
}
@media screen and (max-width: 805px) {
  .question__headingInner {
    line-height: 1.4;
  }
  .question__headingInner > span {
    display: none;
  }
  .question__headingInner br {
    display: inline;
  }
  .question__headingInner::before {
    bottom: -10px;
    left: -168px;
  }
}
@media screen and (max-width: 750px) {
  .question__container {
    padding-top: 40px;
  }
  .question__heading {
    font-size: 20px;
    line-height: 1.4;
    height: 80px;
  }
  .question__headingInner::before {
    bottom: -12px;
    left: -98px;
    width: 93px;
    height: 93px;
    background-size: cover;
  }
  .question {
    padding-bottom: 50px;
  }
  .question__container dt {
    padding: 10px;
    font-size: 16px;
    line-height: 1.5;
  }
  .question__container dd {
    padding: 15px 15px;
    font-size: 14px;
    line-height: 1.75;
  }
}
/* apply
===============================================================*/
.apply {
  padding-bottom: 100px;
  background: #fff;
}

.apply__heading {
  padding: 0;
  background: #fff799;
  color: #ea68a2;
  font-size: 36px;
  font-weight: bold;
  text-align: center;
  height: 120px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-align-items: center;
  align-items: center;
}

.apply__headingInner {
  position: relative;

}

.apply__headingInner:before {
  position: absolute;
  bottom: -1em;
  left: -180px;
  width: 170px;
  height: 180px;
  background: url(../images/apply_chara01.png) no-repeat;
  content: '';
}
.apply__headingInner br {
  display: none;
}

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

.apply__container {
  padding-top: 65px;
}

.apply__campaign {
  max-width: 740px;
  margin: 0 auto;
}

.apply__price {
  margin: 0 auto;
  font-size: 24px;
  text-align: center;
  text-decoration: line-through;
}

.apply__saleContainer {
  position: relative;
  margin-top: 125px;
  padding: 45px 0 35px;
  border: 10px solid #f8daeb;
  text-align: center;
}

.apply__saleContainer:before {
  position: absolute;
  top: -98px;
  right: 0;
  left: 0;
  width: 107px;
  height: 107px;
  margin: auto;
  background: url(../images/top_icon_arrow.png) no-repeat;
  content: '';
}

.apply__caution {
  padding-top: 25px;
  font-size: 18px;
  text-align: center;
}

.apply__join {
  margin-top: 50px;
  padding: 35px 50px 55px;
  background: #fff799;
}

.apply__joinHeading {
  font-size: 30px;
  font-weight: bold;
  line-height: 1.6;
  text-align: center;
}

.apply__txt {
  font-size: 16px;
  line-height: 3;
  text-align: center;
}

.apply__schedule {
  margin-top: 20px;
  padding: 35px 40px 40px;
  background: #fff;
}

.apply__scheduleHeading {
  color: #ec92c4;
  font-size: 24px;
  text-align: center;
}

.apply__time {
  padding-top: 10px;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
}

.apply__scheduleFlexContainer {
  margin-top: 40px;
}

.apply__flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.apply__place {
  width: 47%;
}

.apply__prefectures {
  font-size: 18px;
  font-weight: bold;
  text-align: center;
}

.apply__year {
  margin-top: 10px;
  padding: 5px;
  background: #eee;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
}

.apply__yearContainer + .apply__yearContainer {
  margin-top: 40px;
}

.apply__yearContainer table {
  width: 100%;
  margin: 20px auto 0;
  margin-top: 20px;
}

.apply__yearContainer table tr td {
  padding-top: 6px;
  padding-left: 10%;
  font-size: 18px;
}

.apply__tableHaight {
  min-height: 66px;
}

.apply__deadline {
  margin-top: 30px;
  font-size: 18px;
  text-align: center;
}

.apply__school {
  padding-top: 40px;
}

.apply__btn {
  position: relative;
  width: 44%;
  margin-bottom: 20px;
  padding: 8px;
  border-radius: 30px;
  background: #f29c9f;
  text-align: center;
}

.apply__btn:nth-of-type(3), .apply__btn:nth-of-type(4) {
  margin-bottom: 0;
}

.apply__btn a {
  display: block;
  color: #fff;
  font-size: 30px;
  font-weight: bold;
}

.apply__btn a:after {
  position: absolute;
  top: 16px;
  right: 16px;
  width: 33px;
  height: 33px;
  background: url(../images/set_icon.png);
  content: '';
}

/*カートボタン*/
.btn_bottom2 {
	position: relative;
    margin: 0 auto 0;
    padding: 45px 0 10px;
    text-align: center;
}


@media screen and (max-width: 1200px) {
/*
  .apply__headingInner:before {
    left: -220px;
  }
*/
  .apply__inner {
    padding: 0 10px;
  }
}
@media screen and (max-width: 1100px) {
  .apply__headingInner br {
    display: inline;
  }
  .apply__headingInner::before {
    bottom: -6px;
  }
}
@media screen and (max-width: 750px) {
  .apply__heading {
    font-size: 20px;
    line-height: 1.4;
    height: 80px;
  }
  .apply__headingInner::before {
    bottom: -12px;
    left: -98px;
    width: 100px;
    height: 106px;
    background-size: cover;
  }
}
@media screen and (max-width: 750px) {
  .apply {
    padding-bottom: 50px;
  }
/*  .apply__heading {
    font-size: 28px;
  }*/
/*  .apply__headingInner:before {
    display: none;
  }*/
  .apply__container {
    padding-top: 35px;
  }
  .apply__sale img {
    width: 300px;
  }
  .apply__caution {
    font-size: 14px;
  }
  .apply__join {
    padding: 20px 10px;
  }
  .apply__joinHeading {
    font-size: 22px;
  }
  .apply__txt {
    margin-top: 10px;
    font-size: 14px;
    line-height: 1.6;
  }
  .apply__schedule {
    padding: 25px 10px;
  }
  .apply__scheduleHeading {
    font-size: 20px;
  }
  .apply__time {
    font-size: 16px;
  }
}


/* set
===============================================================*/
.set {
  margin-bottom: 70px;
  padding-bottom: 50px;
  background: #f7dedf;
}

.set__inner {
  max-width: 1004px;
  margin: 0 auto;
}
.set__inner a {
  display: block;
  position: relative;
  padding: 25px 0 55px;
}
.set__inner a:after {
  position: absolute;
  top: -92px;
  right: -164px;
  width: 224px;
  height: 186px;
  margin: auto;
  background: url(../images/set_baloon.png);
  background-size: contain;
  content: '';
}

@media screen and (max-width: 1300px) {
  .set__inner a:after {
    top: -99px;
    right: -25px;
    width: 180px;
    height: 149px;
    background-size: contain;
  }
}
@media screen and (max-width: 750px) {
  .set__inner a {
    padding: 25px 0 25px;
  }
  .set__inner a:after {
    display: none;
  }
}


/*

.set__flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-top: 40px;
}

.set__campaign {
  width: 72%;
}

.set__txt {
  font-size: 18px;
  line-height: 1.6;
}

.set__txtMsg {
  color: #cf777a;
  font-size: 48px;
  font-weight: bold;
}

.set__sale {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  height: 55px;
  margin-top: 40px;
  border-radius: 8px;
}

.set__limit {
  width: 17.1%;
  height: 100%;
  border-radius: 8px 0 0 8px;
  background: #f29c9f;
  color: #fff;
  font-size: 24px;
  font-weight: bold;
  line-height: 55px;
  text-align: center;
}

.set__container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 82.9%;
  height: 100%;
  border-radius: 0 0 8px 8px;
  background: #fff;
}

.set__setTxt {
  width: 31.6%;
  margin: 0 auto;
  font-size: 16px;
  font-weight: bold;
}

.set__priceImage {
  position: relative;
  width: 188px;
}

.set__priceArrow {
  display: inline-block;
  position: relative;
  width: 188px;
}

.set__priceArrow:after {
  position: absolute;
  top: -5px;
  left: -120px;
  width: 104px;
  height: 60px;
  background: url(../images/set_arrow.png);
  background-size: contain;
  content: '';
  z-index: 2;
}

.set__priceArrow img {
  position: absolute;
  right: 0;
  bottom: -28px;
  width: 226px;
  height: 77px;
  margin: auto;
}

.set__getTxt {
  width: 29.1%;
  font-size: 16px;
  font-weight: bold;
  text-align: center;
}

.set__detail {
  width: 24.5%;
}

.set__detailImage {
  position: relative;
}

.set__detailImage:after {
  position: absolute;
  top: -120px;
  right: -170px;
  width: 224px;
  height: 186px;
  margin: auto;
  background: url(../images/set_baloon.png);
  background-size: contain;
  content: '';
}

.set__detailImagePosition {
  position: relative;
}

.set__detailBtn {
  position: relative;
  height: 55px;
  margin-top: 10px;
  padding-left: 50px;
  border-radius: 8px;
  background: #cf777a;
  line-height: 55px;
}

.set__detailBtn a {
  display: inline-block;
  width: 100%;
  color: #fff;
  font-size: 24px;
  font-weight: bold;
}

.set__detailBtn a:after {
  position: absolute;
  top: 11px;
  right: 11px;
  width: 33px;
  height: 33px;
  background: url(../images/set_icon.png);
  content: '';
}

.set__total {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 30px;
}

.set__totalLessonPrice {
  position: relative;
  margin-right: 40px;
}

.set__totalLessonPrice:after,
.set__totalLessonPrice:before {
  position: absolute;
  content: '';
}

.set__totalLessonPrice:before {
  top: 0;
  right: -25px;
  bottom: 0;
  width: 10px;
  height: 30px;
  margin: auto;
  background: #fff;
}

.set__totalLessonPrice:after {
  top: 0;
  right: -35px;
  bottom: 0;
  width: 30px;
  height: 10px;
  margin: auto;
  background: #fff;
}

.set__totalCourcePrice {
  position: relative;
  margin-right: 50px;
}

.set__totalCourcePrice:after,
.set__totalCourcePrice:before {
  position: absolute;
  content: '';
}

.set__totalCourcePrice:before {
  top: 45px;
  right: -40px;
  width: 30px;
  height: 10px;
  background: #fff;
}

.set__totalCourcePrice:after {
  right: -40px;
  bottom: 45px;
  width: 30px;
  height: 10px;
  background: #fff;
}

.set__totalNormalPrice {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -ms-flex-item-align: center;
      align-self: center;
  margin-right: 15px;
}

.set__totalNormalPrice:after,
.set__totalNormalPrice:before {
  display: none;
}

.set__totalSetPrice {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-item-align: center;
      align-self: center;
}
*/

/* utility
===============================================================*/
.u-mt1em {
  margin-top: 1em !important;
}

.u-mt2em {
  margin-top: 2em !important;
}

.u-mt3em {
  margin-top: 3em !important;
}

.u-mt12px {
  margin-top: 12px;
}

.u-mb0em {
  margin-bottom: 0em !important;
}

.u-mb1em {
  margin-bottom: 1em !important;
}

.u-mb2em {
  margin-bottom: 2em !important;
}

.u-mb12px {
  margin-bottom: 12px;
}

.u-strongTxt {
  font-size: 56px;
}

.u-map {
  position: relative;
  overflow: hidden;
}

.u-map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.u-marker {
  font-weight: bold;
}

.u-marker.u-marker--pink {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, #f7dedf));
  background: linear-gradient(transparent 60%, #f7dedf 60%);
}

.u-marker.u-marker--green {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, #e3f5b7));
  background: linear-gradient(transparent 60%, #e3f5b7 60%);
}

.u-marker.u-marker--blue {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, #c5e8f9));
  background: linear-gradient(transparent 60%, #c5e8f9 60%);
}

.u-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.u-alCenter {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.u-spbw {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.u-ta-c {
  text-align: center !important;
}

.u-pc {
  display: none;
}

.u-tab {
  display: none;
}

.u-sp {
  display: none;
}

.u-sp_sm {
  display: none;
}

.u-clearfix:after {
  display: block;
  height: 0.1px;
  clear: both;
  font-size: 0.1em;
  line-height: 0;
  content: " ";
  visibility: hidden;
}

.u-clearfix {
  display: inline-block;
}

/* exlude MacIE5 \*/
* html .clearfix {
  height: 1%;
}

.u-clearfix {
  display: block;
}

/* end MacIE5 */
.u-clear {
  clear: both;
}
@media screen and (max-width: 1600px) {
  body {
    color: #000;
  }
}

@media screen and (max-width: 1200px) {
  body {
    color: #000;
  }


  .lesson__img {
    width: 50%;
  }
  .message__inner {
    padding: 0 12px;
  }





  .set__inner {
    padding: 0 10px;
  }
  .set__flex {
    padding-top: 80px;
  }
  .set__detailImage:after {
    top: -130px;
    right: 20px;
    width: 179px;
    height: 149px;
    z-index: 1;
  }
  .set__detailImagePosition {
    z-index: 10;
  }
  .u-pc {
    display: inline;
  }
}
@media screen and (max-width: 900px) {
  body {
    color: #000;
  }
  .lesson__info {
    width: 100%;
    margin-bottom: 50px;
  }
  .lesson__txt {
    text-align: center;
  }
  .lesson__title {
    text-align: center;
  }
  .lesson__price {
    text-align: center;
  }
  .lesson__img {
    width: 100%;
    margin: 0 auto;
  }
  .certificate {
    padding: 155px 0 95px;
  }
  .certificate__container:before {
    top: -210px;
    right: 0px;
  }


  .apply__yearContainer table tr td {
    font-size: 16px;
  }
  .set__flex {
    padding-top: 40px;
  }
  .set__campaign {
    width: 768px;
    margin: 0 auto;
  }
  .set__sale {
    height: auto;
  }
  .set__limit {
    width: 100%;
    border-radius: 8px 8px 0 0;
  }
  .set__container {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: 100%;
  }
  .set__setTxt {
    width: 100%;
    padding-top: 20px;
    text-align: center;
  }
  .set__priceImage {
    width: 100%;
    height: 100px;
    margin: 0 auto;
    text-align: center;
  }
  .set__priceArrow {
    height: 100px;
    margin: 0 auto;
    text-align: center;
  }
  .set__priceArrow:after {
    top: 50px;
    left: -100px;
  }
  .set__priceArrow img {
    right: 0;
    bottom: 20px;
    left: 0;
    width: 158.2px;
    height: 53.9px;
  }
  .set__getTxt {
    width: 100%;
    padding-bottom: 10px;
  }
  .set__detail {
    width: 100%;
    margin: 0 auto;
    margin-top: 170px;
    text-align: center;
  }
  .set__detailImage:after {
    right: 0;
    left: 0;
  }
  .set__detailImagePosition {
    width: 80%;
  }
  .set__detailBtn {
    padding-left: 0px;
  }
  .set__total {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-top: 60px;
  }
  .set__totalLessonPrice {
    width: 45%;
    margin: 0 auto;
    text-align: center;
  }
  .set__totalCourcePrice {
    width: 45%;
    margin: 0 auto;
    text-align: center;
  }
  .set__totalCourcePrice:after,
  .set__totalCourcePrice:before {
    display: none;
  }
  .set__totalNormalPrice {
    display: block;
    width: 100%;
    margin: 70px auto 10px;
    text-align: center;
  }
  .set__totalNormalPrice:after,
  .set__totalNormalPrice:before {
    display: block;
    position: absolute;
    content: '';
  }
  .set__totalNormalPrice:before {
    top: -50px;
    right: 0;
    left: 20px;
    width: 10px;
    height: 30px;
    margin: auto;
    background: #fff;
  }
  .set__totalNormalPrice:after {
    top: -50px;
    right: 20px;
    left: 0;
    width: 10px;
    height: 30px;
    margin: auto;
    background: #fff;
  }
  .set__totalSetPrice {
    display: block;
    width: 100%;
    text-align: center;
  }
}
@media screen and (max-width: 768px) {
  body {
    color: #000;
  }
  .media__list {
    padding: 0 10vw;
  }


  .content__sbsContainer {
    width: 100%;
    text-align: center;
  }
  .content__sbsContainer + .content__sbsContainer {
    margin-top: 80px;
  }
  .content__sbsHeading.content__sbsHeading--day:after {
    right: 0;
    left: 0;
  }
  .content__infoContainer {
    padding: 35px 10px;
  }
  .content__txt.content__txt--minHeight {
    min-height: 1em;
  }
  .content__item {
    max-width: 240px;
    margin: 0 auto;
    text-align: left;
  }




  .campaign {
    padding: 45px 0 60px;
  }
  .campaign__inner {
    padding: 0 10px;
  }
  .campaign__saleContainer {
    margin-top: 85px;
  }
  .campaign__saleContainer:before {
    top: -58px;
    width: 64px;
    height: 64px;
    background-size: contain;
  }


  .apply__saleContainer {
    margin-top: 85px;
  }
  .apply__saleContainer:before {
    top: -58px;
    width: 64px;
    height: 64px;
    background-size: contain;
  }
  .apply__place {
    width: 100%;
  }
  .apply__place + .apply__place {
    margin-top: 50px;
  }
  .apply__tableHaight {
    min-height: auto;
  }
  .apply__deadline {
    font-size: 16px;
  }
  .apply__btn {
    width: 100%;
  }
  .apply__btn:nth-of-type(3), .apply__btn:nth-of-type(4) {
    margin-bottom: 20px;
  }
  .apply__btn a {
    font-size: 24px;
  }
  .apply__btn a:after {
    top: 10px;
    right: 10px;
  }
  .set__campaign {
    width: 100%;
  }
  .set__txt {
    font-size: 16px;
  }
  .set__txtMsg {
    font-size: 29px;
  }
  .set__detailImage:after {
    top: -110px;
    width: 157px;
    height: 130px;
  }
  .set__detailImagePosition {
    width: 100%;
    z-index: 10;
  }
  .u-tab {
    display: inline;
  }
}
@media screen and (max-width: 700px) {
  body {
    color: #000;
  }
}
@media screen and (max-width: 640px) {
  body {
    color: #000;
  }
  .footerMenuWrap {
    padding: 20px 0 0px 0;
    border-bottom: #FFF 1px solid;
  }
  .footer__inner {
    padding: 0 10px;
  }
  .footerMenu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .footerMenu li {
    display: block;
    width: 48%;
    margin: 0;
    margin-bottom: 20px;
  }
  .footerMenu li a {
    display: block;
    padding: 15px 0;
    border-radius: 20px;
    background: #FFF;
    color: #74bcb3;
  }
  .footer__copy {
    padding: 15px 0;
    color: #fff;
    font-size: 12px;
    line-height: 1;
  }
  .float_Bth {
    display: block;
    height: 60px;
  }
  .float_BthInner {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    position: fixed;
    bottom: 0;
    width: 100%;
    max-width: 640px;
    padding: 10px;
    background: #f4f9ea;
    z-index: 10000;
  }
  .float_BthInner a {
    display: block;
    padding: 10px;
    background: #db5962;
    color: #FFF;
    text-decoration: none;
  }
  .float_Bth {
    height: 60px;
  }
  .float_BthInner {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    position: fixed;
    bottom: 0;
    width: 100%;
    max-width: 640px;
    padding: 10px;
    background: #f4f9ea;
    text-align: center;
    z-index: 10000;
  }
  .float_BthInner a {
    display: block;
    padding: 10px;
    background: #db5962;
    color: #FFF;
    text-decoration: none;
  }
.pcfloat_Bth, .pcfloat_Bth__web {
    display: none
  }	
  .header {
    height: 50px;
  }
  .header__logo {
    padding: 15px 0;
  }
  .header__logo img {
    width: 150px;
  }
  .top {
    margin-top: 50px;
    padding: 240px 0 120px;
  }
  .top__heading {
    font-size: 7vw;
    left: 5%;
  }
  .top__heading2 {
    top: 80px;
    left: 0%;
    width: 250px;
    height: 250px;
    font-size: 35px;
  }
  .top__heading2 span {
    font-size: 18px;
  }
  .top__heading3 {
    font-size: 7vw;
    top: 40%;
    left: 10%;
  }



  .lesson__bgWhite {
    padding: 45px 10px 35px;
  }
  .lesson__txt {
    font-size: 14px;
  }
  .lesson__title {
    font-size: 28px;
  }
  .lesson__methodTxt {
    font-size: 16px;
  }
  .lesson__schedule:before {
    left: 20px;
    width: 22.4px;
    height: 25.9px;
    background-size: contain;
  }
  .lesson__schedule a {
    font-size: 20px;
     padding: 16px 0;
  }
  .certificate__container {
    padding: 0 12px;
  }
  .certificate__container:before {
    top: -150px;
    width: 204px;
    height: 170px;
    background-size: contain;
  }
  .message {
    padding: 50px 0 60px;
  }
  .message__heading {
    font-size: 24px;
  }
  .message__msg {
    font-size: 18px;
  }





  .campaign__sale img {
    width: 300px;
  }
  .campaign__caution {
    font-size: 14px;
  }
  .campaign__apply {
    width: 100%;
    margin-top: 40px;
  }
  .campaign__apply a {
    font-size: 16px;
  }



  .set {
    padding-bottom: 30px;
  }
  .set__totalLessonPrice {
    width: 40%;
  }
  .set__totalLessonPrice:before {
    right: -20px;
    width: 7px;
    height: 21px;
  }
  .set__totalLessonPrice:after {
    right: -27px;
    width: 21px;
    height: 7px;
  }
  .u-pc_lg {
    display: none;
  }
  .u-sp {
    display: inline;
  }
	
.content__tokuten {
    width: 100%;
    height: auto;
  }
  .content__tokuten .content__infoContainer {
    padding: 35px 30px;
  }
  .content__title {
    text-align: center;
  }
  .content__tokuten__item {
    display: block;
    margin-left: auto;
    margin-right: auto;
    float: none;
    margin-bottom: 20px;
  }
  .content__tokuten__item2 {
    width: 100% !important;
    float: none;
    text-align: center;
    padding-left: 0px
  }
  .content__tokuten__item2 .toku_bigft {
    margin-bottom: 0px;
  }
  .content__heading2 .content__tokutenin {
    margin-top: 45px;
  }
	
.worries{padding-top:80px}		
  .worries img {
    width: 100%
  }
  .worries__msg {
    font-size: 20px;
    line-height: 1.6;
  }
  .tokuten2 {
    padding: 40px 0 45px;
  }
  .tokuten__item:before {
    top: 6px;
    left: -34px;
    width: 20.5px;
    height: 15.5px;
    background-size: contain;
  }
  .tokuten__list {
    max-width: 600px;
    font-size: 16px;
    line-height: 1.75;
    padding: 0px 10px 10px 40px;
  }
  .tokuten2__info {
    width: 100%;
  }
  .tokuten2__item {
    padding: 30px 20px;
  }
  .tokuten2__title {
    margin-bottom: 20px;
  }	
	
	
}
@media screen and (max-width: 375px) {
  body {
    color: #000;
  }


  .u-sp_sm {
    display: inline;
  }
}
@media screen and (max-width: 900px) and (max-width: 640px) {
  .set__totalCourcePrice {
    width: 40%;
  }
}


@media screen and (min-width: 751px) {
  .u-spOnly {
    display: none;
  }
}
@media screen and (max-width: 750px) {
  .u-pcOnly {
    display: none;
  }
}
.mfp-bg {
    z-index: 10420 !important;
}
.mfp-wrap {
    z-index: 10430 !important;
}

.mfp-content {
  max-width: 1000px;
  margin-top: 30px;
  margin-bottom: 30px;
}
.p-popupMessage {
  display : -webkit-box;
  display : -webkit-flex;
  display : -ms-flexbox;
  display : flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  background: #FFF;
  margin: 0 auto;
  padding: 40px;
}
.p-popupMessage-detail {
  width: 70%;
  box-sizing: border-box;
  padding-right: 30px;
}
.p-popupMessage-photo {
  width: 30%;
}
.p-popupMessage-detailName {
  font-size: 20px;
  line-height: 1.4;
  font-weight: bold;
  border-bottom: #CCC 1px solid;
  padding: 0 0 13px 0;
  margin-bottom: 19px;
}
.p-popupMessage-detailText {
  font-size: 14px;
  line-height: 1.4;
}
@media screen and (max-width: 750px) {
  .p-popupMessage-detail {
    width: 100%;
    padding-right: 0px;
    margin-bottom: 30px;
  }
  .p-popupMessage-photo {
    width: 100%;
    text-align: center;
  }
  .p-popupMessage-detailName {
    font-size: 18px;
  }
}

.p-intro2 {
  padding: 60px 0 60px;
  background: #eb6877;
}
.p-intro2Tilte {
  color: #FFF;
  font-size: 40px;
  font-weight: bold;
  line-height: 1.6;
  text-align: center;
}
@media screen and (max-width: 750px) {
  .p-intro2 {
    padding: 30px 0 30px;
  }
  .p-intro2Tilte {
    font-size: 20px;
    line-height: 1.6;
  }
}


/*問合せ、SNS　220213追加
===============================================================*/

.h_icon {
    position: relative;
    float: left;
    margin-left: 0.5em;
    height: 85px;
	top: -70px;
    line-height: 85px;
}

.h_icon_in {
    position: absolute;
    width: 300px;
    overflow: hidden;
    line-height: 1;
}

.h_icon img {
    position: relative;
    float: left;
    width: 45%;
    padding-left: 10px;
}



.sheader-container {
    position: relative;
    float: right;
    margin-left: 0.5em;
	top: -65px;
}

.sheader {
    position: absolute;
    overflow: hidden;
    right: 0;
    width: 200px;
}

.sheader img {
    position: relative;
    float: left;
    width: 25%;
    padding-left: 10px;
}


@media screen and (max-width: 900px) {
.h_icon,
.sheader-container{display: none}
}

/* 600px以上用（タブレット用）の記述 */
@media screen and (min-width: 600px) and (max-width: 1024px) {
	.top__heading,.top__heading3{font-size:44px }
}