@charset "utf-8";

/* CSS Document */
body {
  font-family: 'メイリオ', Meiryo, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}

h2 {
  font-size: 2rem !important;
  font-weight: bold;
}

a:hover img {
  opacity: 0.7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha(opacity=70)";
}

/* Shared
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.button {
  border-radius: 100px;
}

/* Sections
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.section {
  padding: 3rem 0 2rem;
  text-align: center;
}

.section-heading,
.section-description {
  margin-bottom: 1.2rem;
}

.section p, .section ul {
  text-align: left;
}

.section ul {
  list-style: disc;
  padding: 0;
  margin-left: 1.5rem;
  margin-bottom: 0;
}

.section ul li {
  margin-bottom: 0.5rem;
}

.f-container {
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
}

.f-item {
  padding: 0.5rem;
}

.p90 {
  width: 90%;
  margin: 0.5rem auto 1.0rem;
}

.img-float-r {
  float: right;
  margin-left: 1em;
  margin-bottom: 1em;
}

.mincho {
  font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.f20{font-size: 20px;}

/* Clearing
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.clear::after {
  content: "";
  display: table;
  clear: both;
  margin-bottom: 2rem;
}

/* Round
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.image-round1 {
  border-radius: 50%;
}

/* Wraparound
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.figure-r {
  float: right;
  margin: 0 0 15px 15px;
  width: 35%;
}

/* Margin
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.mb2rem {
  margin-bottom: 2rem !important;
}

.mb30 {
  margin-bottom: 30px;
}

/* Header
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.section.header {
  padding: 0 !important;
  text-align: center;
  background: #B3CEBB;
}

.hnav {
	background-color: #9BBFA6;
}
.hnav .container {
	padding: 0;
	width: 960px;
	max-width: 100%;
}
.hnav .three {
	width: 25%;
    margin-left: 0%;
}
.hnav img {
	max-width:100%;
	vertical-align: bottom;
}
@media (max-width: 768px) {
	.hnav .three {
		width: 50%;
	    margin-left: 0%;
	}
	.hnav img {
		width:100%;
	}
}


/* Hero
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.section.hero {
  padding: 0 !important;
}

.section.hero .container {
  padding: 0 !important;
}

.hero img {
  position: relative;
  max-width: 100%;
  margin: 0 auto;
  vertical-align: bottom;
}

/* about
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.section.about {
  text-align: left;
}

/* Values
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.values {
  background-color: #D5E3DA;
  /*background-image: url('../images/values-bg.jpg');
  background-repeat: repeat-y;
  background-size: 100%;
  color: #fff;*/
  padding-bottom: 2rem;
}

.values h2 {
  margin-bottom: 0 !important;
}

.values p {
  text-align: left;
}

.values hr {
  margin-top: 1.5rem;
  margin-bottom: 2.5rem;
  border-width: 0;
  border-top: 3px solid #5f9ea0;
  width: 4rem;
}

.values .schedule {
  background-color: rgba(255, 255, 255, 1.0);
  color: #222;
}

.values .schedule td:nth-of-type(1, 3) {
  width: 8em;
  text-align: center;
}

.values .schedule td {
  padding: 1em;
  vertical-align: top;
  border-top: 3px solid #5f9ea0;
  border-bottom: none;
  box-sizing: border-box;
}

.values .schedule hr {
  width: 100%;
  border-top: 1px dashed #ccc;
  margin-top: 0.5rem;
  margin-bottom: 0.7rem;
}

.value-multiplier {
  margin-bottom: .5rem;
  color: #11DFC7;
}

.value-heading {
  margin-bottom: .3rem;
}

.value-description {
  opacity: 1;
  font-weight: 300;
  text-align: left;
}

.section .koumoku {
  background: #eee;
  text-align: center;
}

.section .naiyo {
  width: 70%;
  box-sizing: border-box;
}

.section .v_time {
  text-align: center;
  font-weight: bold;
  border-left: 1px solid #eee;
}

.values .schedule ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.values .schedule li {
  border-bottom: 1px dashed #aaa;
  margin-bottom: 0.5em;
}

/* Condition
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.section.condition {
  background-color: #F5F4ED;
}

.condition {
  border-bottom: 1px solid #ddd;
}

.condition h2, h2.midashi {
  margin-bottom: 0 !important;
}

.condition hr, hr.underline {
  margin-top: 1.5rem;
  margin-bottom: 2.5rem;
  border-width: 0;
  border-top: 3px solid #137E20;
  width: 4rem;
}

.section.condition ul {
  font-weight: bold;
}

/* Material
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.section.material {
  background-color: #fff;
}

.material {
  /*border-bottom: 1px solid #ddd;*/
}

.material h2 {
  position: relative;
  margin-bottom: 2rem !important;
  background: #4A1F67;
  padding: 0.5em 0;
  color: #fff;
}

.material h2:after {
  content: "";
  position: absolute;
  right: 0;
  bottom: -20px;
  left: 0;
  width: 0px;
  height: 0px;
  margin: auto;
  border-style: solid;
  border-color: #4A1F67 transparent transparent transparent;
  border-width: 20px 20px 0 20px;
}

.material hr{
  margin-top: 1.5rem;
  margin-bottom: 2.5rem;
  border-width: 0;
  border-top: 3px solid #137E20;
  width: 4rem;
}

.section.material ul {
  font-weight: bold;
}

/* Support
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.section.support {
  padding: 0 0 2rem !important;
}

.section.support p {
  margin-bottom: 1rem;
}

.section.support h2, .section.profwrap h2 {
  /*background:#800040;*/
  background: #8CBA9E;
  padding: 3rem 0.5rem;
  color: #fff;
  box-sizing: border-box;
}

/* Plan
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.plan {
  background-image: url('../images/values-bg.jpg');
  background-size: cover;
  padding-bottom: 2rem;
}

.plan table {
  background-color: #fff;
}

.plan table td, .plan table th {
  padding: 1.5rem;
  box-sizing: border-box;
}

.plan table td.plan-ttl {
  background-color: #6B9798;
  /*background-color: #0d3f67;*/
  color: #fff;
  font-size: 1.45rem;
  font-weight: bold;
  text-align: center;
}

.plan table p {
  margin-bottom: 1.5rem;
}

.plan table td.plan-ttl2 {
  background-color: #8080ff;
  color: #fff;
  font-size: 1.45rem;
  font-weight: bold;
  text-align: center;
}

.plan .wh-link a {
  color: #fff;
}

.plan .c-box {
  background-color: #fff;
  padding-top: 1.5rem;
}

/* Categories
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.categories {
  background-image: url('../images/values-bg.jpg');
  background-size: cover;
  color: #fff;
}

.categories .section-description {
  margin-bottom: 4rem;
}

/*受講料・各種割引プラン*/
table.waribiki {
  margin-bottom: 0;
}

.m0 img {
  margin: 0;
  padding: 0;
  vertical-align: bottom;
}

.mt30 {
  margin-top: 30px;
}

img.w100 {
  max-width: 854px;
  width: 100%;
}

/*voice*/
.voicewrap, .voicewrap2 {
  text-align: left;
}

.voicewrap .voice {
  /*border: 1px solid #ccc;
  padding: 20px;*/
}

.voicewrap .voice .title, .voicewrap2 .voice .title {
  position: relative;
  padding: 0.6em;
  background: #e0edff;
  margin-bottom: 15px;
  border-radius: 10px;
  /* CSS3草案 */
  -webkit-border-radius: 10px;
  /* Safari,Google Chrome用 */
  -moz-border-radius: 10px;
  /* Firefox用 */
  margin-bottom: 1.5rem;
  font-weight: bold;
}

.voicewrap .voice .title:after, .voicewrap2 .voice .title:after {
  position: absolute;
  content: '';
  top: 100%;
  left: 30px;
  border: 15px solid transparent;
  border-top: 15px solid #e0edff;
  width: 0;
  height: 0;
}

.voicewrap .voice .note, .voicewrap2 .voice .note {
  width: 100%;
  padding: 1em;
  /*background: linear-gradient(#ccc 1px, transparent 1px) #fffbf2;*/
  background: #fffbf2;
  border: 1px solid #ccc;
  overflow: hidden;
  box-sizing: border-box;
}

.voicewrap .voice .note p, .voicewrap2 .voice p {
  background: url(../basic_img/bg-note01.png) bottom;
  line-height: 36px;
  overflow: hidden;
  margin-bottom: 0;
}

.pdf-f {
  border: 2px solid #990099;
  width: 90%;
  margin-top: 15px;
  margin-left: auto;
  margin-right: auto;
  padding: 5px;
}

.pdf-f p {
  background: url(../basic_img/pdf.png) no-repeat left top;
  background-size: 40px;
  padding: 10px 10px 10px 50px;
  text-align: left;
  margin-bottom: 0;
  margin-left: 10px;
}

.morevoice {
  display: inline-block;
  font-size: 1.5em;
  font-weight: bold;
  background: #4A1F67;
  border-radius: 7px;
  color: #fff;
  padding: 0.5em 1.5em;
  margin-bottom: 2.5rem;
}

.morevoice a {
  color: #fff !important;
}

.cr {
  color: #e00000;
}

.blue {
  color: #0053fD;
}

.fb {
  font-weight: bold;
}

.align-c {
  text-align: center !important;
}

.submidashi {
  background: #009b9f;
  color: #fff;
  padding: 10px;
  border-radius: 10px;
  /* CSS3草案 */
  -webkit-border-radius: 10px;
  /* Safari,Google Chrome用 */
  -moz-border-radius: 10px;
  /* Firefox用 */
}

/*ロードマップ
-------------------------------------------*/
.r-mapwrap ul {
  list-style: none;
  margin: 0;
  padding: 0;
  font-size: 0;
}

/*.r-mapwrap .r-map{

	display: flex;
	width: 100%;
	flex-wrap: wrap;
align-content: flex-start;
 font-size: 0;
}*/
.r-mapwrap .r-map li {
  margin: 0;
  padding: 0;
  display: inline-block;
  font-size: 0;
  width: 225px;
  box-sizing: border-box;
}

.r-mapwrap .r-map li img, .r-mapwrap .r-map-low li img {
  margin: 0;
  padding: 0;
  width: 100%;
}

.r-mapwrap .r-map-low li {
  margin: 0;
  padding: 0;
  display: inline-block;
  font-size: 0;
  box-sizing: border-box;
}

.pt10 {
  padding-top: 10px;
}

/*スケジュール表
-------------------------------------------*/
.schedulewrap th {
  color: #0000ff;
  font-weight: normal;
  background: #ffff80;
  text-align: center;
  padding: 5px;
  font-size: 0.875em;
  border-left: 1px solid #ccc;
}

.schedulewrap td {
  text-align: center;
  padding: 5px;
  font-size: 0.875em;
  border-left: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
}

.bg-plum {
  background: #FAEFFA;
}

.bg-plum .moshikomi {
  border: 1px solid #990099;
  padding: 20px;
  background: #fff;
}

.bg-plum .moshikomi hr {
  border: 1px dashed #666;
}

.moshikomi hr {
  border: 1px dashed #666;
  width: 100%;
}

.venue h3, h3.zoomttl {
  position: relative;
  margin-bottom: 2rem !important;
  background: #009b9f;
  padding: 0.5em 0;
  color: #fff;
  font-size: 1.8rem;
}

.venue h3:after, h3.zoomttl:after {
  content: "";
  position: absolute;
  right: 0;
  bottom: -20px;
  left: 0;
  width: 0px;
  height: 0px;
  margin: auto;
  border-style: solid;
  border-color: #009b9f transparent transparent transparent;
  border-width: 20px 20px 0 20px;
}

.align-l {
  text-align: left;
}

.youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}

.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

.schedulewrap table {
  width: 100%;
  border-top: 1px solid #ccc;
  ;
  border-right: 1px solid #ccc;
}

.schedulewrap .sky {
  color: #0080c0;
}

.schedulewrap .pink {
  color: #ff6699;
}

.schedulewrap .tq {
  color: #009999;
}

.schedulewrap .navy {
  color: #0000ff;
}

.schedulewrap .cr {
  color: #ff0000;
}

.schedulewrap .red {
  color: #ff0033;
}

/*フッター*/
.footer {
  background-image: url('../basic_img/values-bg.jpg');
  background-size: cover;
  color: #fff;
  font-size: small;
}

/*プロフィール*/
.f40 {
  font-size: 40px;
}

.bg_prof {
  /*background: url(../core_img/prof_bg.jpg) no-repeat center top;*/
  background: #2C2F34;
  margin-top: -32px;
}

.prof01 {
  padding: 60px 30px 30px 30px;
  /*width: 500px;*/
  color: #fff;
  /*font-size: 0.8em;*/
  box-sizing: border-box;
}

.bg_prof2 {
  background: url(../basic_img/prof_bg2.jpg) no-repeat center top -18px ;


}

.prof02 {
  padding: 40px 30px 30px 40px;
  width: 500px;

  font-size: 0.8em;
  box-sizing: border-box;
}

.nosp {
  display: block;
}
.onmd{
	display: none;
}

.nopc {
  display: none;
}

/*ZOOM
--------------------------------------------------*/
/* Smaller than 768 */
@media (max-width: 768px) {
  body {
    font-size: 1.0em;
  }

  .section.header img {
    width: 100%;
  }

  .section img.responsive {
    width: 100%;
  }

  h2 {
    font-size: 1.8em !important;
  }

  .r-mapwrap .r-map li {
    width: 25%;
  }

  .r-mapwrap .r-map-low li.btn01 {
    width: 46.66666%;
  }

  .r-mapwrap .r-map-low li.btn02 {
    width: 25%;
  }

  .r-mapwrap .r-map-low li.btn03 {
    width: 28.33333%;
  }

  .profwrap .md-w50 {
    width: 350px;
  }
	.bg_prof{
		background-size: cover;
	}
	.bg_prof2{
		background-size: cover;
		background-position: center top 0px;
	}

}

@media (max-width: 767px) {
	.onmd{
		display: block;
	}
	.nomd{display: none;}
}

/* Smaller than 480 */
@media (max-width: 480px) {
  .figure-r {
    display: block;
    float: none;
    margin: 15px auto;
    width: 70%;
  }

  .f-container {
    display: flex;
    flex-flow: row wrap;
    align-items: center;
  }

  .f-item {
    padding: 0.5rem;
  }

  .section h2 {
    font-size: 1.2em !important;
  }

  .section.support h2 {
    padding: 2rem 0.5rem;
  }

  .plan table td, .plan table th {
    padding: 0.5rem;
  }

  .morevoice {
    display: inline-block;
    font-size: 1.1em;
  }

  .schedulewrap td {
    font-size: 0.5em;
    padding: 3px;
    margin: 0;
  }

  .schedulewrap tr>td:first-child {
    font-size: 0.5em;
    padding: 3px;
    margin: 0;
    white-space: nowrap;
  }

  .venue h3, h3.zoomttl {
    font-size: 1.2rem;
  }

  .pdf-f p {
    background-position: left 10px;
  }

  .nosp {
    display: none;
  }

  .nopc {
    display: block;
  }

  .values .schedule td {
    display: block;
    width: 100%;
  }

  .values .schedule td.v_time {
    border-top: 1px solid #ccc;
    border-left: none;
  }

  .img-float-r {
    float: none;
    display: block;
    text-align: center;
    margin-left: 0;
  }

  .prof01 {
	  padding: 20px 10px 10px;
	}

	.prof01 .f40 {
	  font-size: 24px;
	}
}

/* Bigger than 1000 */
@media (min-width: 1000px) {}

.l-drawer__menu{
	background-color:#003300;
}
