@charset "UTF-8";
/* CSS Document */

/*
	00 Commmon
	01 Root
*/


/*
01 Root
========================================================================== */
.dirRoot {}

/* Header ===================== */
header.dirRoot {
  height: 100%;
  max-height: 1000px;
  min-height: 650px;
  position: relative;
}
header.dirRoot:before {
  content: '';
  width: 100%;
  height: 100%;
  background-color: rgba(0,0,0,.2);
  /*background-image: linear-gradient(to left, rgba(0,0,0,0) 0%, rgba(0,0,0,.22) 100%);*/
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
}
header.dirRoot nav {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  width: 140px;
  height: 100%;
  margin: 0 0 0 65px;
  position: relative;
  z-index: 1;
}
header.dirRoot h1 { margin: 18px 0 0 0; }
header.dirRoot nav .gloval { margin: 42px 0 0 25px; }
header.dirRoot nav .sns { margin: 40px 0 0 25px; }
header.dirRoot nav > * {
  align-items: flex-start;
  color: rgba(255,255,255,1);
}

header.dirRoot .copy {}
header.dirRoot .copy h2 {
  display: flex;
  flex-direction: column;
  align-items: center;
  color: rgba(255,255,255,1);
  width: 450px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-52.5%);
  z-index: 2;
}
header.dirRoot .copy h2 > * { white-space: nowrap; }
header.dirRoot .copy h2 i { width: 100%; }
header.dirRoot .copy h2 b {
  margin: 18px 0 0 5px;
  font-size: 24px;
}
header.dirRoot .copy h2 a {
  width: 97.5%;
  border: 3px solid rgba(255,255,255,1);
  margin: 22px auto 0;
  padding: 9px 0;
  font-size: 15px;
  text-align: center;
  position: relative;
}
header.dirRoot .copy h2 a:before {
  content: '';
  width: 20px;
  height: 20px;
  background-image: url(/images/common/arrow-circle.svg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translate(0,-50%);
}
header.dirRoot .scrollDown {
  width: 12px;
  height: 50px;
  position: absolute;
  bottom: 2.5em;
  left: 95px;
  z-index: 1;
  transition: .3s ease;
}
header.dirRoot .scrollDown:hover { bottom: 1.5em; }
header.dirRoot .scrollDown > * { display: block; height: 100%; position: relative; }
header.dirRoot .scrollDown hr {
  width: 22px;
  height: 55px;
  background-image: url(/images/common/arrow-down.svg);
  background-size: cover;
  background-position: center;
}

header.dirRoot .topics {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  min-width: 475px;
  max-width: 55%;
  position: absolute;
  bottom: 0;
  right: 0;
}
header.dirRoot .topics.verLatest { background-color: rgba(25,120,210,.95); }
header.dirRoot .topics.verPickup { background-color: rgba(235,80,0,.95); }
header.dirRoot .topics:before {
  content: '';
  width: 30px;
  height: 7px;
  background-image: url(/images/common/arrow-wht.svg);
  background-size: cover;
  background-position: center;
  position: absolute;
  top: 50%;
  right: 15px;
  transform: translate(0,-50%);
  transition: .3s ease;
}
header.dirRoot .topics:hover:before { transform: translate(5px,-50%); }
header.dirRoot .topics a {
  display: flex;
  align-items: center;
  overflow: hidden;
  padding: 15px 10px 16px;
}
header.dirRoot .topics a > * { color: rgba(255,255,255,1); font-size: 12px; line-height: 1; }
header.dirRoot .topics time {
  padding: 0 2em;
  letter-spacing: .03rem;
  position: relative;
  white-space: nowrap;
}
header.dirRoot .topics time:after {
  content: '';
  width: 1px;
  height: 10px;
  background-color: rgba(255,255,255,1);
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(0,-50%);
}
header.dirRoot .topics p {
  display: block;
  padding: 2px 5em 0 2em;
  letter-spacing: .01rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.backgroundImages {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
.sliderFirstview {
  width: 100%;
  height: 100%;
}
.sliderFirstview div { height: 100%;}
.sliderFirstview picture {
  height: 100%;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  position: relative;
}

/* Main ===================== */
main.dirRoot {}

section.concept { padding: 125px 0; }
.sliderConcept {
  margin: 70px 0 0 0;
  position: relative;
}
.sliderConcept:before,
.sliderConcept:after {
  content: '';
  width: 5%;
  height: 100%;
  position: absolute;
  top: 0;
  z-index: 2;
}
.sliderConcept:before {
  left: 0;
  background: linear-gradient(90deg, rgba(255,255,255,.15) 0%, rgba(255,255,255,0) 100%);
}
.sliderConcept:after {
  right: 0;
  background: linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.15) 100%);
}
.sliderConcept .block {
  border-radius: 10px;
  margin: 0 10px
}
.sliderConcept .inner {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 40px 35px 55px;
  color: rgba(255,255,255,1);
}
.sliderConcept .inner sub {
  font-size: 37px;
  letter-spacing: .1rem;
  margin: 10px 0 45px 0;
}
.sliderConcept .inner h3 {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin: 0 0 40px;
}
.sliderConcept .inner h3 i {
  font-size: 16px;
  line-height: 1.8;
  position: relative;
  white-space: nowrap;
}
.sliderConcept .inner h3 i:first-child:before,
.sliderConcept .inner h3 i:first-child:after {
  content: '';
  width: 15px;
  height: 15px;
  background-image: url(/images/concept/eqs.svg);
  background-size: cover;
  background-position: center;
  position: absolute;
  top: -3px;
}
.sliderConcept .inner h3 i:first-child:before { left: -24px; }
.sliderConcept .inner h3 i:first-child:after { right: -24px; transform: scaleX(-1); }
.sliderConcept .inner p {
  min-height: 195px;
  padding: 40px 0 0 0;
  position: relative;
}
.sliderConcept .inner p:before {
  content: '';
  width: 100%;
  height: 2px;
  background-color: rgba(255,255,255,1);
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%,0);
}
.sliderConcept .slick-dots {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 40px 0 0 0;
}
.sliderConcept .slick-dots li {
  width: 9px;
  height: 9px;
  margin: 0 3px;
  background-color: rgba(218,233,242,1);
  border-radius: 50%;
  font-size: 0;
  line-height: 1;
}
.sliderConcept .slick-dots li.slick-active {
  background-color: rgba(245,225,0,1);
}

.philosophy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin: 100px 0 0 0;
}
.philosophy h2 {
  margin: 0 0 45px 0;
  font-size: 23px;
  letter-spacing: .05rem;
}
.philosophy .text {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 35px 0 0 0;
}
.philosophy .text h3 {
  width: 200px;
  margin: 0 80px 0 0;
}
.philosophy .text p {
  font-size: 15px;
  letter-spacing: .02rem;
}

.concept .showmore { margin: 90px 0 0 0; }


section.date {
  padding: 125px 0 125px;
  background-color: rgba(25,120,210,.05);
}
section.date:before,
section.date:after {
  content: '';
  width: 100%;
  height: 1px;
  background-color: rgba(232,228,209,1);
  position: absolute;
  left: 0;
  z-index: -2;
}
section.date:before { top: 0; }
section.date:after { bottom: 0; }
section.date h2 {}
section.date h2 > * {
  position: absolute;
  z-index: -1;
  color: rgba(230,239,244,.75);
  font-size: 150px;
}
section.date h2 i {
  top: 90px;
  left: 0;
}
.calender {}
.calender h4 {
  margin: 0 0 22px 0;
  font-size: 16px;
  text-align: center;
  letter-spacing: .05rem;
}
.calender h3 {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.calender h3 i {
  font-size: 18px;
}
.calender h3 b {
  margin: 8px 0 35px 0;
  font-size: 45px;
}
.calender .block { padding: 0 75px; }
.calender .block .box {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 285px;
}
.calender .block .box div {
  display: block;
  width: 140px;
  height: 140px;
  cursor: pointer;
  position: relative;
}
.calender .block .box div:nth-child(odd) { margin: -130px -32px 0; }
.calender .block .box div:nth-child(even) { margin: 130px -32px 0; }
.calender .block .box div span {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  position: relative;
  transition: .4s;
}
.calender .block .box div:hover span { transform: scaleX(-1); }
.calender .block .box div span:before {
  content: '';
  width: 35px;
  height: 35px;
  background-image: url(/images/common/ico-zoom.svg);
  background-size: cover;
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 1;
  opacity: 0;
  transform: translate(-50%,-50%);
  transition: .4s;
}
.calender .block .box div:hover span:before { transform: translate(-50%,-50%) scaleX(-1); opacity: 1; }
.calender .block .box div span:after {
  content: '';
  width: 140px;
  height: 140px;
  border-radius: 50%;
  border: 3px solid rgba(255,255,255,.9);
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  transition: .2s;
  z-index: 0;
}
.calender .block .box div:nth-child(odd) span:after { background-color: rgba(25,120,210,1); }
.calender .block .box div:nth-child(even) span:after { background-color: rgba(41,147,193,1); }
.calender .block .box div span > * {
  display: block;
  color: rgba(255,255,255,1);
  position: absolute;
  left: 50%;
  transform: translate(-50%,0);
  transition: .5s ease;
  z-index: 1;
}
.calender .block .box div:hover span > * { opacity: 0; }
.calender .block .box div i {
  top: calc(50% - 40px);
  font-size: 34px;
  letter-spacing: .05rem;
}
.calender .block .box div b {
  top: calc(50% - 5px);
  margin: 9px 0 12px 0;
}
.calender .block .box div address {
  top: calc(50% + 28px);
  font-size: 11px;
}
.calender .btnSlick {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 65px;
  height: 65px;
  padding: 0 0 12px 0;
  background-color: rgba(245,225,0,1);
  border-radius: 50%;
  font-size: 12px;
  letter-spacing: .02rem;
  position: absolute;
  bottom: 90px;
  z-index: 1;
}
.calender .btnSlick:before {
  content: '';
  width: 25px;
  height: 5px;
  background-image: url(/images/common/arrow-blk.svg);
  background-size: cover;
  position: absolute;
  top: calc(50% + 8px);
}
.calender .btnSlick.orgPrev { left: 50px; }
.calender .btnSlick.orgPrev:before { transform: scaleX(-1); }
.calender .btnSlick.orgNext { right: 50px; }
.calender .btnSlick.slick-disabled { opacity: .35; cursor: default; }
.calender p {
  display: block;
  margin: 45px 0 0 0;
  text-align: center;
  line-height: 1.8;
}
.calender ul {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 750px;
  margin: 55px auto 0;
}
.calender ul li {
  width: 50%;
  padding: 18px 0;
  text-align: center;
  position: relative;
  background-color: rgba(25,120,210,1);
  color: rgba(255,255,255,1);
}
.calender ul li:not(:first-child):before {
  content: '';
  width: 1px;
  height: 100%;
  background-color: rgba(255,255,255,1);
  position: absolute;
  top: 0;
  left: 0;
}
.calender ul li > * {
  display: flex;
  justify-content: center;
  align-items: center;
}
.calender ul li i {
  width: 22px;
  height: 22px;
}
.calender ul li b {
  font-size: 14px;
  letter-spacing: .03rem;
  line-height: 1;
  margin: 0 0 0 10px;
}
.calender .noSchedule {
  padding: 10px 75px;
  font-size: 12px;
  color: rgba(100,100,100,1);
  background-color: rgba(255,255,255,1);
  border: 1px solid rgba(25,120,210,.3);
  border-radius: 3px;
}

.date .bgShape {
  display: none;
  width: 50vw;
  height: 900px;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(0,-50%);
}
.date .bgShape:before,
.date .bgShape:after {
  content: '';
  width: 0;
  height: 0;
  position: absolute;
  right: 0;
}
.date .bgShape:before {
  border-style: solid;
  border-width: 0 0 700px 50vw;
  border-color: transparent transparent rgba(240,245,250,1) transparent;
  top: 0;
}
.date .bgShape:after {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 50vw 200px 0;
  border-color: transparent rgba(240,245,250,1) transparent transparent;
  bottom: 0;
}


section.course { padding: 125px 0 75px 0; }
.academy {
  width: calc(100% - 200px);
  margin: 75px auto 0 auto;
}
.academy .box {
  display: flex;
  justify-content: center;
  align-items: center;
}
.academy .box .inner {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: calc(50% - 20px);
  max-width: initial;
  border-radius: 10px;
  margin: auto 10px;
  padding: 50px 0;
  position: relative;
}
.academy .box .inner:nth-child(1) { background-color: rgba(41,147,193,1); }
.academy .box .inner:nth-child(2) { background-color: rgba(25,120,210,1); }
.academy .box .innerbox {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
}
.academy .box .inner > * { color: rgba(255,255,255,1); }
.academy .box h3 {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin: 10px 0 30px 0;
}
.academy .box h3 i {
  padding: 0 0 15px 0;
  font-size: 32px;
  position: relative;
}
.academy .box h3 b {
  font-size: 14px;
  letter-spacing: .03rem;
}
.academy .box ul {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: calc(100% - 100px);
  padding: 20px 0;
  margin: 0 0 10px 0;
  border-top: 1px solid rgba(255,255,255,.75);
  border-bottom: 1px solid rgba(255,255,255,.75);
}
.academy .box ul > li + li { margin: 12px 0 0 0;}
.academy .box ul i { font-size: 12px; }
.academy .box ul b { font-size: 14px; }

.academy .box .initialcost {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: calc(100% - 100px);
  margin: 20px 0 0 0;
  padding: 25px 0 20px 0;
  background-color: rgba(255,255,255,1);
}
.academy .box .initialcost h4 {
  width: 100%;
}
.academy .box .initialcost ul li:first-child { border-top: 2px solid rgba(232,228,209,1); }
.academy .box .initialcost ul li {
  width: 100%;
}
.academy .box .initialcost ul > li + li { margin: 0; }
.academy .box .initialcost > * { color: rgba(75,75,75,1); }
.academy .box .initialcost h3 {
  margin: 0 0 10px;
  font-size: 14px;
  letter-spacing: .05rem;
}
.academy .box .initialcost h3 i {
  padding: 0 0 0 18px;
  font-size: 14px;
  position: relative;
}
.academy .box .initialcost h3 i:before {
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8px 4px 0 4px;
  border-color: rgba(75,75,75,1) transparent transparent transparent;
  position: absolute;
  top: 4px;
  left: 0;
}
.academy .box .initialcost h4 {
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc(700px + 4px);
  padding: 20px 0;
  color: rgba(255,255,255,1);
}
.academy .box .initialcost ul {
  width: 100%;
  padding: 10px 0 0 0;
  margin: 0;
}
.academy .box .initialcost ul li {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  padding: 20px 0;
  background-color: rgba(255,255,255,1);
  border-top: 2px solid rgba(232,228,209,1);
  position: relative;
}
.academy .box .initialcost ul li:last-child { border-bottom: 2px solid rgba(232,228,209,1); }
.academy .box .initialcost ul li:before {
  content: '';
  width: 17px;
  height: 17px;
  background-image: url(/images/common/ico-plus.svg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  position: absolute;
  top: 50%;
  left: 25px;
  transform: translate(0,-50%);
}
.academy .box .initialcost ul li > * { position: relative; }
.academy .box .initialcost ul li i small { font-size: 11px; }
.academy .box .initialcost ul li b {
  font-size: 16px;
  padding: 0 0 0 8px;
  top: -1px;
}
.academy .box .notice {
  width: calc(100% - 100px);
  margin: 25px 0 0 0;
}
.academy .box .notice p {
  font-size: 12px;
  line-height: 1.8;
}

.ammount {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin: 12px 0 0;
}
.ammount hr {
  width: 9px;
  height: 10px;
  background-image: url(/images/common/ico-equal.svg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.ammount .price:after {
  content: '';
  width: 100%;
  height: 10px;
  background-color: rgba(245,225,0,.5);
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translate(-50%,0);
  z-index: -1;
}
.ammount .price i { letter-spacing: .1rem; }
.ammount .price b {
  margin: 0 0 0 12px;
  letter-spacing: 0;
}
.ammount .price sub { right: -5px; }
.ammount span {
  margin: 25px 0 0 0;
  line-height: 1.8;
  text-align: center;
}
.ammount + h4 { margin: 45px 0 0 0; }

.present {
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc(100% - 300px);
  max-width: 1000px;
  margin: 60px auto 0 auto;
  padding: 15px 0;
  position: relative;
}
.present picture {
  width: 235px;
  margin: 0 75px 0 0;
}
.present picture img {
  width: 100%;
  filter: drop-shadow(12px 7px 0 rgba(245,225,0,1));
}
.present h3 {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 300px;
  padding: 5px 0;
  margin: 10px 0 0 0;
  font-size: 12px;
  line-height: 1.5;
  background-color: rgba(245,225,0,1);
}
.present h3 i {}
.present h3 b {
  padding: 0 0 0 25px;
  font-size: 11px;
  letter-spacing: .05rem;
  position: relative;
}
.present h3 b:before {
  content: '';
  width: 1px;
  height: 12px;
  background-color: rgba(75,75,75,1);
  position: absolute;
  top: 2px;
  left: 12px;
  transform: rotate(35deg);
}
.present h4 {
  display: flex;
  flex-direction: column;
  margin: 25px 0 25px 0;
}
.present h4 b {
  margin: 12px 0 0 0;
  font-size: 17px;
  line-height: 1.6;
  letter-spacing: .03rem;
  white-space: nowrap;
}
.present p { line-height: 1.7; }
.present p small {
  display: block;
  margin: 12px 0 0 0;
  font-size: 12px;
}

.discount {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 150px 0 45px 0;
  position: relative;
}
.discount:before {
  content: '';
  width: 700px;
  height: 300px;
  background-image: url(/images/school/home.svg);
  background-size: 100%;
  background-position: center;
  background-repeat: no-repeat;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%,25px);
}
.discount h3 {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.discount h3 i {
  font-size: 17px;
  letter-spacing: .05rem;
}
.discount h3 b {
  margin: 20px 0 35px 0;
  letter-spacing: .03rem;
}
.discount p { text-align: center; }

.course .showmore { margin: 55px 0 0 0; }
.course .bgShape {
  width: 40vw;
  height: 900px;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(0,-65%);
}
.course .bgShape:before,
.course .bgShape:after {
  content: '';
  width: 0;
  height: 0;
  position: absolute;
  left: 0;
}
.course .bgShape:before {
  border-style: solid;
  border-width: 400px 0 0 40vw;
  border-color: transparent transparent transparent rgba(240,245,250,1);
  top: 0;
}
.course .bgShape:after {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 500px 40vw 0 0;
  border-color: rgba(240,245,250,1) transparent transparent transparent;
  bottom: 0;
}

.news {
  padding: 100px 0 75px;
}
.news .frame {
  width: calc(100% - 325px);
}
.news ul { margin: 50px auto; }
.news ul li { border-bottom: 1px solid rgba(220,215,200,1); }
.news ul li:first-child { border-top: 1px solid rgba(220,215,200,1); }
.news ul li > * {
  display: flex;
  align-items: center;
  line-height: 1.2;
  padding: 28px 20px;
  background-color: rgba(255,255,255,.75);
  position: relative;
}
.news ul li time {
  width: 12.5%;
  letter-spacing: .03rem;
}
.news ul li i {
  display: flex;
  align-items: center;
  width: 87.5%;
  padding: 0 75px 0 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.news ul li i span {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 80px;
  height: 22px;
  font-size: 11px;
  letter-spacing: .03rem;
  color: rgba(255,255,255,1);
  margin: 0 35px 0 0;
  position: relative;
  top: -1px;
}
.news ul li.verNews i span { background-color: rgba(25,120,210,1); }
.news ul li.verColumn i span { background-color: rgba(235,80,0,1); }
.news ul li hr {
  width: 28px;
  height: 8px;
  background-image: url(/images/common/arrow-blk.svg);
  background-size: cover;
  background-position: right center;
  position: relative;
  transition: .4s ease;
}
.news ul li > *:hover hr { transform: translate(10px,0); }
.news .showmore a {
  width: 450px;
  margin: initial;
  background-color: rgba(75,75,75,1);
}
.news .bgShape {
  width: 40vw;
  height: 900px;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(0,-60%);
}
.news .bgShape:before,
.news .bgShape:after {
  content: '';
  width: 0;
  height: 0;
  position: absolute;
  right: 0;
}
.news .bgShape:before {
  border-style: solid;
  border-width: 0 0 750px 40vw;
  border-color: transparent transparent rgba(240,245,250,1) transparent;
  top: 0;
}
.news .bgShape:after {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 40vw 150px 0;
  border-color: transparent rgba(240,245,250,1) transparent transparent;
  bottom: 0;
}


/*
02 CONCEPT
========================================================================== */
.dirConcept {}
.dirConcept .concept {
  max-width: 1600px;
  margin: auto;
  padding: 40px 0;
}
.dirConcept .concept .ttlBasic { margin: 0 0 75px 0; }
.dirConcept .concept .block {
  display: flex;
  align-items: center;
  border-bottom: 1px solid rgba(232,228,209,1);
  position: relative;
}
.dirConcept .concept .block:after {
  content: '';
  width: 100%;
  height: 100%;
  background-color: rgba(240,245,250,1);
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
.dirConcept .concept > .ttlBasic + .block { border-top: 1px solid rgba(232,228,209,1); }
.dirConcept .concept .block:nth-child(odd) { flex-direction: row; }
.dirConcept .concept .block:nth-child(even) { flex-direction: row-reverse; }
.dirConcept .concept .block .inner {
  width: 50%;
  height: 100%;
  padding: 0 80px 0 60px;
}
.dirConcept .concept .block:nth-child(odd) .inner { padding: 0 100px 0 125px; }
.dirConcept .concept .block:nth-child(even) .inner { padding: 0 125px 0 100px; }
.dirConcept .concept .block h3 {
  margin: 20px auto 30px auto;
  text-align: center;
  background-color: initial;
  position: relative;
}
.dirConcept .concept .block h3.verStandard { color: rgba(25,120,210,1); }
.dirConcept .concept .block h3.verLight { color: rgba(41,147,193,1); }
.dirConcept .concept .block h3.verFlesh { color: rgba(43,91,188,1); }
.dirConcept .concept .block h3 i {
  display: inline-flex;
  position: relative;
  font-size: 19px;
  line-height: 1.6;
  letter-spacing: .01rem;
  text-align: center;
}
.dirConcept .concept .block h3 i sub {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 125px;
  height: 75px;
  color: rgba(75,75,75,1);
  font-size: 10px;
  letter-spacing: -.02rem;
  line-height: 1.4;
  text-align: center;
  position: absolute;
  top: -55px;
  left: -125px;
  z-index: 1;
}
.dirConcept .concept .block h3 i sub:before {
  content: '';
  width: 100%;
  height: 100%;
  background-image: url(/images/common/balloon.svg);
  background-size: 95%;
  background-position: center;
  background-repeat: no-repeat;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  z-index: -1;
}
.dirConcept .concept .block p {}
.dirConcept .concept .block picture { width: 50%; }
.dirConcept .concept .block h4 {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 82px;
  height: 82px;
  color: rgba(255,255,255,1);
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  z-index: 2;
}
.dirConcept .concept .block h4 i {
  font-size: 32px;
  line-height: 1.2;
  position: relative;
  top: -2px;
  z-index: 1;
}
.dirConcept .concept .block h4 hr {
  width: 100%;
  height: 100%;
  border: 2px solid rgba(255,255,255,1);
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%) rotate(45deg);
  z-index: 0;
}

.dirConcept .training { padding: 125px 0 0; }
.listTraining {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 75px auto 0;
}
.listTraining .block {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 340px;
  height: 340px;
  margin: 0 5px 10px;
  cursor: pointer;
  position: relative;
}
.listTraining .block hr {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  transition: .4s ease;
  z-index: -1;
}
/*.listTraining .block:hover hr { transform: translate(-50%,-50%) scaleX(-1); }*/
.listTraining .block:before {
  content: '';
  width: 40px;
  height: 40px;
  background-image: url(/images/common/ico-zoom.svg);
  background-size: cover;
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 1;
  opacity: 0;
  transform: translate(-50%,-50%);
  transition: .4s;
}
/*.listTraining .block:hover:before { opacity: 1; }*/
.listTraining .block > * {}
.listTraining .block .box {
  padding: 0 40px;
  color: rgba(255,255,255,1);
  position: relative;
  transition: .2s ease;
}
/*.listTraining .block:hover .box {
  transform: scaleX(-1);
  opacity: 0;
}*/
.listTraining .block h3 {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin: 0 0 25px 0;
  position: relative;
}
.listTraining .block h3 i { font-size: 16px; }
.listTraining .block h3 b {
  margin: 7px 0 0 0;
  font-size: 35px;
}
.listTraining .block h4 {
  font-size: 16px;
  line-height: 1.6;
  text-align: center;
}
.listTraining .block dl {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 25px 30px 0;
  position: relative;
}
.listTraining .block dt {
  margin: 0 0 15px 0;
  font-size: 14px;
}
.listTraining .block dd {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  background-color: initial;
}
.listTraining .block dd.verStandard { color: rgba(25,120,210,1); }
.listTraining .block dd.verLight { color: rgba(41,147,193,1); }
.listTraining .block dd.verFlesh { color: rgba(43,91,188,1); }

.listTraining .block dd i {
  display: inline-flex;
  padding: 4px 10px;
  margin: 0 2px 6px;
  font-size: 11px;
  background-color: rgba(255,255,255,1);
  border-radius: 7px;
  white-space: nowrap;
}
.listTraining .block ul > li + li { margin: 1px 0 0 0; }
.listTraining .block ul li > * {
  padding: 5px 15px;
  position: relative;
}
.listTraining .block ul li i {}
.listTraining .block ul li i:before {
  content: '';
  width: 5px;
  height: 5px;
  border-top: 1px solid rgba(255,255,255,1);
  border-right: 1px solid rgba(255,255,255,1);
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(0,-50%) rotate(45deg);
}
.andmore {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: calc(100% - 250px);
  max-width: 1600px;
  margin: 90px auto 30px;
  padding: 35px 0;
  border: 1px solid rgba(220,215,200,1);
  background-color: rgba(25,120,210,.05);
  border-radius: 10px;
  position: relative;
}
.andmore > * { text-align: center; }
.andmore i {
  padding: 0 20px;
  margin: 0 0 30px 0;
  font-size: 24px;
  letter-spacing: .03rem;
  position: absolute;
  top: -15px;
  left: 50%;
  transform: translate(-50%,0);
  white-space: nowrap;
  z-index: 2;
}
.andmore i:before {
  content: '…';
  margin: 0 3px;
}
.andmore i:after {
  content: '';
  width: 100%;
  height: 8px;
  background-color: rgba(255,255,255,1);
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  z-index: -1;
}
.andmore b {
  line-height: 1.7;
}
.andmore b a {
  color: rgba(25,120,210,1);
  border-bottom: 1px solid rgba(25,120,210,1);
}

/*
03 SCHOOL
========================================================================== */
.dirSchool .course {
  margin: auto;
  padding: 40px 0;
}
.dirSchool .access {
  margin: auto;
  padding: 140px 0 75px;
}
.access h2 { margin: 0 0 90px 0; }
.access .block {
  border-top: 1px solid rgba(232,228,209,1);
}
.access .block .inner {
  display: flex;
  justify-content: center;
  align-items: center;
  max-width: 1600px;
  margin: auto;
}
.access .block:last-child { border-bottom: 1px solid rgba(232,228,209,1); }
.access .box {
  width: 42.5%;
  max-width: 600px;
  padding: 0 0 0 125px;
}
.access .box h3 {
  font-size: 15px;
  color: rgba(25,120,210,1);
}
.access .box ul {
  padding: 40px 0;
}
.access .box ul li {
  padding: 0 0 0 15px;
  font-size: 12px;
  line-height: 1.4;
  position: relative;
}
.access .box ul li:before {
  content: '';
  width: 5px;
  height: 5px;
  background-color: rgba(75,75,75,1);
  position: absolute;
  top: 5px;
  left: 3px;
}
.access .box ul > li + li { margin: 12px 0 0 0; }
.access .box a {
  padding: 7px 40px 9px;
  font-size: 12px;
  background-color: rgba(25,120,210,1);
  color: rgba(255,255,255,1);
  border-radius: 5px;
}
.access .map {
  width: 57.5%;
  height: 425px;
  margin: 40px;
  background-color: rgba(250,250,250,1);
}


/*
04 VOICES
========================================================================== */
.dirVoices .voices {
  margin: auto;
  padding: 40px 0;
}
.dirVoices .voices .ttlBasic { margin: 0 0 75px 0; }
.listVoices { padding: 0 100px; }
.listVoices .block {
  display: flex;
  margin: 0 0 75px 0;
  position: relative;
}
.listVoices .block:last-child { margin: 0 0 25px 0; }
.listVoices picture {
  width: 325px;
  height: 325px;
}
.listVoices picture img {
  width: 100%;
  filter: drop-shadow(10px 10px 0 rgba(245,225,0,1));
}
.listVoices .block .box {
  width: calc(100% - 325px);
  padding: 0 0 0 75px;
}
.listVoices .block h3 {
  display: inline-flex;
  align-items: center;
  height: 40px;
  margin: 10px 0 0 0;
  color: rgba(255,255,255,1);
  background-color: rgba(25,120,210,1);
}
.listVoices .block h3 > * {
  display: inline-flex;
  align-items: center;
  height: 100%;
  position: relative;
}
.listVoices .block sub {
  padding: 0 30px;
  font-size: 13px;
  border-right: 1px solid rgba(255,255,255,1);
}
.listVoices .block h3 span {
  padding: 0 35px;
  font-size: 12px;
}
.listVoices .block h3 span > * {
  padding: 0 18px;
  position: relative;
}
.listVoices .block h3 span b:before {
  content: '';
  width: 2px;
  height: 15px;
  background-color: rgba(255,255,255,1);
  position: absolute;
  top: 0;
  left: -1px;
  transform: rotate(45deg);
}
.listVoices .block .inner {
  padding: 50px 60px 45px 30px;
  background-color: rgba(25,120,210,.05);
  border-bottom: 1px solid rgba(232,228,209,1);
}
.listVoices .block .box > h3 + .inner { border-top: 1px solid rgba(232,228,209,1); }
.listVoices .block .box > .inner + .inner { padding: 45px 60px 45px 30px; }
.listVoices .block .inner h4 {
  padding: 0 0 25px 35px;
  position: relative;
}
.listVoices .block .inner h4:before {
  content: '';
  width: 25px;
  height: 1px;
  background-color: rgba(75,75,75,1);
  position: absolute;
  top: 5px;
  left: 0;
}
.listVoices .block .inner > dl + h4 { margin: 30px 0 0 0; }
.listVoices .block .inner dl {
  display: flex;
  padding: 0 0 0 35px;
}
.listVoices .block .inner > dl + dl { margin: 10px 0 0 0; }
.listVoices .block .inner dl dt {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 85px;
  height: 22px;
  margin: 0 0 3px 0;
  font-size: 12px;
}
.listVoices .block .inner dl.student dt {
  color: rgba(255,255,255,1);
  background-color: rgba(25,120,210,1);
}
.listVoices .block .inner dl.parent dt {
  background-color: rgba(245,225,0,1);
}
.listVoices .block .inner dl dd {
  width: calc(100% - 85px);
  padding: 0 0 0 15px;
  font-size: 12px;
  line-height: 1.6;
}


/*
05 COACH
========================================================================== */
.dirCoach .coach {
  max-width: 1600px;
  margin: auto;
  padding: 40px 0 60px;
}
.listCoach { margin: 70px 0 0 0; }
.listCoach .block { position: relative; }
.listCoach > .block + .block { margin: 100px 0 0 0; }
.listCoach .block picture { width: 70%; }
.listCoach .block .box {
  width: 32.5%;
  position: absolute;
  top: 100px;
  right: 0;
}
.listCoach .block .box:before {
  content: '';
  width: 5px;
  height: 100%;
  background-color: rgba(245,225,0,1);
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(0,-50%);
}
.listCoach .block .box h3 {
  display: flex;
  flex-direction: column;
  margin: 0 0 40px 0;
}
.listCoach .block .box h3 i {
  font-size: 32px;
  letter-spacing: .02rem;
}
.listCoach .block .box h3 b {
  padding: 20px 0 0 0;
  letter-spacing: .12rem;
}
.listCoach .block .box dl {}
.listCoach .block .box > dl + dl { margin: 30px 0 0 0; }
.listCoach .block .box dl dt { margin: 0 0 10px 0; }
.listCoach .block .box dl dt i {
  padding: 0 0 0 15px;
  position: relative;
}
.listCoach .block .box dl dt i:before {
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 4px 0 4px;
  border-color: rgba(75,75,75,1) transparent transparent transparent;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(0,-50%);
}
.listCoach .block .box dl dd {
  display: flex;
  flex-direction: column;
}
.listCoach .block .box dl dd span {
  margin: 10px 0 0 0;
  font-size: 12px;
  line-height: 1.5;
}
.listCoach .block .box dl dd span small {
  font-size: 11px;
}
.listCoach .msg {
  width: 57.5%;
  padding: 50px 0 0 125px;
}
.listCoach .msg h3 { margin: 0 0 25px 0; }
.listCoach .msg h3 i {
  padding: 0 0 0 15px;
  font-size: 16px;
  position: relative;
}
.listCoach .msg h3 i:before {
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 4px 0 4px;
  border-color: rgba(75,75,75,1) transparent transparent transparent;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(0,-50%);
}
.listCoach .msg p { line-height: 1.9; }


/*
06 NEWS
========================================================================== */
.dirNews .news {
  max-width: 1600px;
  padding: 40px 0;
}

.category {
  display: flex;
  justify-content: center;
  align-items: center;
}
.category .inner {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 400px;
  margin: 60px auto 0 auto;
  border: 1px solid rgba(75,75,75,1);
}
.category .inner * {
  display: inline-flex;
  justify-content: center;
  width: 33.3333333%;
  padding: 7px 10px;
  background-color: rgba(255,255,255,1);
  transition: .4s ease;
}
.category .inner > * + * { border-left: 1px solid rgba(75,75,75,1); }
.category .inner *.current {
  background-color: rgba(75,75,75,1);
  color: rgba(255,255,255,1);
  pointer-events: none;
}
.category .inner *:hover { background-color: rgba(25,120,210,.15); }

.dirNews .news .frame { margin: 70px auto 0 auto; }

.pagination {
  display: flex;
  justify-content: center;
  padding: 0 0 70px 0;
}
.pagination ul {
  display: flex;
}
.pagination ul li {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 22px;
  height: 22px;
  background-color: rgba(255,255,255,1);
  border: 1px solid rgba(75,75,75,1);
  border-radius: 5px;
  margin: 0 7px;
}
.pagination ul li.current {
  background-color: rgba(75,75,75,1);
  color: rgba(255,255,255,1);
  pointer-events: none;
}
.pagination ul li > * {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  position: relative;
}
.pagination ul li:hover > * { background-color: rgba(25,120,210,.15); }
.pagination ul li hr {
  width: 7px;
  height: 7px;
  border-top: 2px solid rgba(75,75,75,1);
  border-right: 2px solid rgba(75,75,75,1);
  position: absolute;
  top: 50%;
  left: 50%;
}
.pagination ul li:first-child hr { transform: translate(-40%,-50%) rotate(-135deg); }
.pagination ul li:last-child hr { transform: translate(-60%,-50%) rotate(45deg); }

.verDetail {}
.verDetail h2 {
  font-size: 20px;
  color: rgba(75,75,75,1);
  letter-spacing: .03rem;
}
.verDetail .category .inner {
  width: 300px;
  margin: 45px auto 0 auto;
}
.verDetail .category .inner * {
  width: 50%;
  color: rgba(255,255,255,1);
  pointer-events: none;
}
.verDetail .category .inner.verNews { border: 1px solid rgba(25,120,210,1); }
.verDetail .category .inner.verNews * { background-color: rgba(25,120,210,1); }
.verDetail .category .inner.verColumn { border: 1px solid rgba(235,80,0,1); }
.verDetail .category .inner.verColumn * { background-color: rgba(235,80,0,1); }
.verDetail .category .inner > * + * { border-left: 1px solid rgba(255,255,255,1); }
.verDetail .news .frame {
  width: 750px;
  margin: 75px auto 0 auto;
  line-height: 2;
}

.backPage {
  margin: 50px 0;
}
.backPage > * {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.backPage i {
  width: 35px;
  position: relative;
  left: -2px;
}
.backPage b {
  margin: 5px 0 0 0;
  font-size: 12px;
}


/*
07 FAQ
========================================================================== */
.dirFAQ .faq {
  max-width: 1600px;
  padding: 40px 0;
}
.listFAQ {
  width: calc(100% - 325px);
  margin: 60px auto 0 auto;
  padding: 0 0 65px 0;
  position: relative;
  z-index: 1;
}
.listFAQ:after {
  content: '';
  width: 100%;
  height: 100%;
  background-color: rgba(240,245,250,1);
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
.listFAQ > * {
  position: relative;
  z-index: 1;
}
.listFAQ h3 {
  display: flex;
  justify-content: center;
  margin: 0 0 55px 0;
}
.listFAQ h3 i {
  width: 100%;
  padding: 18px 0;
  font-size: 14px;
  text-align: center;
  color: rgba(255,255,255,1);
}
.listFAQ dl {
  width: 85%;
  margin: auto;
}
.listFAQ > dl + dl { margin: 30px auto 0 auto; }
.listFAQ dl:before,
.listFAQ dl:after {
  content: '';
  position: absolute;
  right: 0;
}
.listFAQ dl:before {
  width: 12px;
  height: 12px;
  background-color: rgba(75,75,75,1);
  border-radius: 3px;
  transform: translate(0,-45%);
  top: 25px;
}
.listFAQ dl:after {
  width: 3px;
  height: 3px;
  border-bottom: 2px solid rgba(255,255,255,1);
  border-right: 2px solid rgba(255,255,255,1);
  top: 25px;
  transform: rotate(45deg) translate(-80%,10%);
}
.listFAQ dl dt { position: relative; cursor: pointer; }
.listFAQ dl dt:before {
  content: '';
  width: 100%;
  height: 1px;
  background-color: rgba(220,215,200,1);
  position: absolute;
  top: 50%;
  right: 0;
  z-index: -1;
}
.listFAQ dl dt em {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 52px;
  height: 52px;
  font-size: 20px;
  line-height: 1;
  border-radius: 100%;
  position: absolute;
  transform: translate(0,-1px);
  transition: .3s ease;
}
.listFAQ dl dt em.question {
  background-color: rgba(25,120,210,1);
  color: rgba(255,255,255,1);
  top: 0;
  left: 0;
  z-index: 2;
}
.listFAQ.verKids dl dt em.question { background-color: rgba(41,147,193,1); }
.listFAQ dl dt em.answer {
  background-color: rgba(245,225,0,1);
  top: 5px;
  left: 5px;
  z-index: 1;
}
.listFAQ dl dt.active em.answer { top: 65px; left: 40px; }
.listFAQ dl dt i {
  display: inline-flex;
  align-items: center;
  height: 52px;
  font-size: 14px;
  background-color: rgba(240,245,250,1);
  padding: 0 1.5em 0 75px;
  position: relative;
}
.listFAQ dl dd { display: none; padding: 12px 0 0 110px; }
.listFAQ dl dd i {
  display: flex;
  padding: 15px 0;
  position: relative;
  line-height: 1.8;
}
.listFAQ dl dd b {
  font-size: 12px;
  line-height: 1.8;
}
.listFAQ dl dd ul {
  margin: 0 0 15px 0;
  padding: 25px;
  background-color: rgba(255,255,255,1);
}
.listFAQ dl dd ul li {
  display: flex;
  align-items: center;
}
.listFAQ dl dd ul > li + li { margin: 9px 0 0 0; }
.listFAQ dl dd ul li > * { position: relative; }
.listFAQ dl dd ul li small { font-size: 12px; }
.listFAQ dl dd ul li:last-child { margin:15px 0 0 0; }
.listFAQ dl dd ul li em {
  margin: 0 0 0 5px;
  font-size: 14px;
  letter-spacing: .02rem;
}
.listFAQ dl dd ul li:last-child small { top: 2px; }
.listFAQ dl dd ul li:last-child em { font-size: 20px; }


/*
08 FORM
========================================================================== */
.verWelcome .toEntry:before {
  width: 1px;
  height: 25px;
  background-image: none;
  background-color: rgba(75,75,75,1);
  top: 100px;
  transform: translate(15px,0);
}
.verWelcome .toEntry:hover:before { transform: translate(15px,5px); }

.ttlWelcome {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  color: rgba(25,120,210,1);
  position: relative;
}
.ttlWelcome i {
  font-size: 32px;
  letter-spacing: .08rem;
}
.ttlWelcome i em { letter-spacing: .2rem; }
.ttlWelcome b {
  margin: 35px 0 0 0;
  padding: 8px 50px;
  background-color: rgba(25,120,210,1);
  border-radius: 3px;
  color: rgba(255,255,255,1);
  font-size: 14px;
  letter-spacing: .03rem;
}

.intro {
  width: calc(100% - 325px);
  max-width: 1600px;
  padding: 30px 0 20px;
  margin: auto;
}
.intro .feature ul {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 45px 0 0;
}
.intro .feature ul li {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 200px;
  height: 200px;
  text-align: center;
  color: rgba(255,255,255,1);
  border-radius: 50%;
}
.intro .feature ul > li + li { margin: 0 0 0 20px; }
.intro .feature ul li > * { text-align: center; }
.intro .feature ul li i {
  font-size: 12px;
  position: relative;
}
.intro .feature ul li i:before,
.intro .feature ul li i:after {
  content: '';
  width: 12px;
  height: 12px;
  background-image: url(/images/concept/eqs.svg);
  background-size: cover;
  background-position: center;
  position: absolute;
  top: -10px;
}
.intro .feature ul li i:before { left: -18px; }
.intro .feature ul li i:after { right: -18px; transform: scaleX(-1); }
.intro .feature ul li b {
  margin: 12px 0 0 0;
  letter-spacing: .03rem;
  line-height: 1.6;
}
.intro .block { margin: 45px 0 0 0; }
.intro .block p { text-align: center; }
.intro .guide {
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid rgba(180,175,170,1);
  border-radius: 5px;
  margin: 50px 0 0 0;
}
.intro .guide li {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 33.333%;
  line-height: 1.3;
}
.intro .guide > li + li { border-left: 1px solid rgba(180,175,170,1); }
.intro .guide li > * {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 75px;
  letter-spacing: .02rem;
}
.intro .guide li i {
  width: 40px;
  height: 40px;
  margin: 0 12px 0 0;
}
.intro .guide li b { white-space: nowrap; }
.intro .guide li small {
  display: inline;
  font-size: 11px;
  letter-spacing: 0;
}
.intro .guide li em {
  letter-spacing: .08rem;
}

.intro.verThanks { padding: 30px 0 50px; }
.verThanks h2 {
  margin: 0 auto 55px;
  font-size: 20px;
  text-align: center;
  letter-spacing: .03rem;
  color: rgba(25,120,210,1)
}
.verThanks p {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 0 0 10px 0;
}
.verThanks p > * {
  text-align: center;
  line-height: 2.2;
}
.verThanks p > * + * { margin: 15px 0 0 0; }

/*
09 SUBPAGE
========================================================================== */
.dirSubpage {}
.dirSubpage .intro { padding: 40px 0; }
.dirSubpage .intro small { font-size: 12px; }
.dirSubpage .intro a {
  color: rgba(25,120,210,1);
  border-bottom: 1px solid rgba(25,120,210,1);
}
.dirSubpage .intro h3 {
  margin: 0 0 20px 0;
  font-size: 14px;
  letter-spacing: .03rem;
}

.listBasic {
  width: calc(100% - 325px);
  max-width: 1600px;
  margin: 40px auto;
}
.listBasic hr {
  width: 100%;
  height: 1px;
  background-color: rgba(220,215,200,1);
  margin: 40px 0;
}
.listBasic dl {
  padding: 0 25px;
  line-height: 1.8;
}
.listBasic > dl + dl { margin: 35px 0 0 0; }
.listBasic dl dt {
  margin: 0 0 20px 0;
  font-size: 14px;
}
.listBasic dl i,
.listBasic dl b {
  padding: 0 0 0 17px;
  position: relative;
}
.listBasic dl i:before,
.listBasic dl b:before {
  content: '';
  position: absolute;
}
.listBasic dl i:before {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 4px 0 4px;
  border-color: rgba(75,75,75,1) transparent transparent transparent;
  top: 7px;
  left: 0;
}
.listBasic dl b:before {
  width: 5px;
  height: 5px;
  background-color: rgba(75,75,75,1);
  top: 6px;
  left: 2px;
}
.listBasic dl dd > span + span { margin: 3px 0 0 0; }
.listBasic dl dd ul {
  padding: 0 0 0 30px;
  position: relative;
}
.listBasic dl dd ul:before {
  content: '';
  width: 1px;
  height: 100%;
  background-color: rgba(75,75,75,1);
  position: absolute;
  top: 0;
  left: 4px;
}
.listBasic dl dd ul li {
  padding: 0 0 0 15px;
  position: relative;
}
.listBasic dl dd ul li:before {
  content: '';
  width: 4px;
  height: 4px;
  border: 1px solid rgba(75,75,75,1);
  border-radius: 50%;
  position: absolute;
  top: 8px;
  left: 3px;
}
.listBasic dl dd ul > li + li { margin: 3px 0 0 0; }
.listBasic dl dd > ul + p,
.listBasic dl dd > p + ul,
.listBasic dl dd > ul + h4,
.listBasic dl dd > h4 + ul { margin: 10px 0 0 0; }
.listBasic dl dd h4 { margin: 0 0 10px 0; }
.listBasic dl dd > h4 + h4,
.listBasic dl dd > p + h4 { margin: 15px 0 0 0; }
.listBasic dl dd span { display: block; }
.listBasic dl dd span:first-child { margin: 0 0 15px 0; }
.listBasic dl dd span em {
  display: block;
  font-size: 20px;
}
.listBasic dl dd small {
  margin: 0 0 0 3px;
  font-size: 11px;
}
.listBasic dl a {
  color: rgba(25,120,210,1);
  border-bottom: 1px solid rgba(25,120,210,1);
}
.listBasic dl time { padding: 0 15px 0 0; }

.intro .boxText {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 75px 0 0;
}
.intro .boxText h3 {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin: 0 75px 0 25px;
}
.intro .boxText h3 sub {
  font-size: 12px;
  letter-spacing: .05rem;
}
.intro .boxText h3 i {
  margin: 15px 0 20px 0;
  font-size: 22px;
}
.intro .boxText p {
  display: flex;
  flex-direction: column;
}
.intro .boxText p > i + i { margin: 10px 0 0 0; } 

.verPreopen { padding: 50px; }




@media screen and (max-width:1080px) {

header.dirRoot nav { margin: 0 0 0 35px; }
header.dirRoot .copy h2 { width: 325px; }
header.dirRoot .copy h2 b { font-size: 18px; }
header.dirRoot .scrollDown { left: 65px; }

.philosophy .text p { font-size: 13px; }

.calender .block { padding: 0 50px; }
.calender .block .box div { width: 125px; height: 125px; }
.calender .block .box div:nth-child(odd) { margin: -120px -32px 0; }
.calender .block .box div:nth-child(even) { margin: 120px -32px 0; }
.calender .block .box div span:after { width: 125px; height: 125px; }
.calender .block .box div i {
  font-size: 27px;
  top: calc(50% - 35px);
}
.calender .block .box div b { margin: 4px 0 0; }
.calender .block .box div address { top: calc(50% + 24px); }
.calender .btnSlick { bottom: initial; top: 10px; }
.calender ul { width: calc(100% - 150px); }

.academy {
  width: calc(100% - 150px);
  margin: 65px auto 0 auto;
}
.academy .box .initialcost,
.academy .box ul,
.academy .box .notice { width: calc(100% - 75px); }
.academy .box .initialcost ul li:before { display: none;}
.academy .box .initialcost ul li b {
  padding: 0 0 0 5px;
  font-size: 15px;
  top: 0;
}

.present { width: calc(100% - 150px); }

.news .frame { width: calc(100% - 150px); }
.news ul li time { width: 15%; }
.news ul li i { width: 85%; }
.news ul li i span { margin: 0 18px 0 0; }

.dirConcept .concept { padding: 30px 0; }
.dirConcept .concept .ttlBasic { margin: 0 0 65px 0; }
.dirConcept .concept .frame {
  display: flex;
  flex-wrap: wrap;
}
.dirConcept .concept .block h3 { margin: 0 auto 30px auto; }
.dirConcept .concept .block h3 i {
  display: flex;
  justify-content: center;
  font-size: 17px;
  line-height: 1.5;
}
.dirConcept .concept .block h3 i sub { top: -75px; left: -15px; }
.dirConcept .concept .block h4 {
  width: 68px;
  height: 68px;
  top: 0;
  left: 0;
  transform: translate(0,0);
}
.dirConcept .concept .block h4 i { font-size: 29px; }
.dirConcept .concept .block h4 hr {
  border: 1px solid rgba(255,255,255,1);
  border-top: none;
  border-left: none;
  transform: translate(-50%,-50%) rotate(0deg);
}
.dirConcept .concept .block:nth-child(odd),
.dirConcept .concept .block:nth-child(even) {
  flex-direction: column;
  width: 50%;
}
.dirConcept .concept .block:nth-child(odd) { border-right: 1px solid rgba(232,228,209,1); }
.dirConcept .concept .block picture { width: 100%; }
.dirConcept .concept .block:nth-child(odd) .inner,
.dirConcept .concept .block:nth-child(even) .inner { padding: 45px 50px 65px; }
.dirConcept .concept .block .inner { width: 100%; }

.dirSchool .course { padding: 30px 0; }
.listTraining { width: calc(100% - 60px); }
.listTraining .block { width: 325px; height: 325px; }
.listTraining .block h3 { margin: 0 0 15px 0; }
.listTraining .block h4 { font-size: 14px; }
.listTraining .block dl { padding: 15px 25px 0; }

.andmore { width: calc(100% - 200px); }

.access .box {
  width: 47.5%;
  padding: 0 0 0 90px;
}
.access .map { width: 52.5%; }

.dirVoices .voices { padding: 30px 0; }
.dirVoices .voices .ttlBasic { margin: 0 0 65px 0; }

.dirCoach .coach { padding: 30px 0; }
.listCoach { margin: 65px 0 0 0; }
.listCoach .block picture { width: 60%; }
.listCoach .block .box {
  width: 35%;
  top: 0;
}
.listCoach .block .box h3 { margin: 0 0 35px 0; }
.listCoach .block .box h3 i { font-size: 29px; }
.listCoach .block .box h3 b { padding: 15px 0 0 0; }
.listCoach .block .box dl dd span small {
  display: block;
  position: relative;
  left: -5px;
}
.listCoach .block .box dl dd span { margin: 5px 0 0 0; }

.dirFAQ .faq { padding: 30px 0; }
.listFAQ {
  width: calc(100% - 150px);
  margin: 55px auto 0 auto;
}
.listFAQ dl { width: 90%; }

.dirSubpage .intro { padding: 30px 0; }
.intro { width: calc(100% - 150px); }
.intro .boxText {
  flex-direction: column;
  margin: 65px 0 0 0;
}
.intro .boxText h3 {
  margin: 0 0 35px 0;
  font-size: 12px;
  letter-spacing: 0;
}
.intro .boxText p i { text-align: center; }

.listBasic {
  width: calc(100% - 150px);
  margin: 35px auto;
}
.listBasic hr { margin: 35px 0; }

.intro .guide li i {
  width: 27px;
  height: 27px;
  min-width: 27px;
  min-height: 27px;
  margin: 0 8px 0 0;
}
.intro .guide li em { letter-spacing: .03rem; }

.ttlWelcome i { font-size: 28px; }
.ttlWelcome b { font-size: 13px; }
.verWelcome .toEntry:before { top: 85px; height: 20px; }


}



@media screen and (max-width:840px) {

header.dirRoot nav {
  align-items: center;
  width: auto;
  margin: auto;
}
header.dirRoot h1 { margin: 15px 0 0 0; }
header.dirRoot .topics {
  width: 100%;
  max-width: initial;
}

.philosophy {
  width: calc(100% - 225px);
  margin: 100px auto 0 auto;
}
.philosophy h2 {
  margin: 0 0 20px 0;
  font-size: 20px;
}
.philosophy .text { flex-direction: column; }
.philosophy .text h3 {
  width: 175px;
  margin: 0 25px 45px 0;
}
.philosophy .text p br { display: none; }

.calender ul { width: calc(100% - 225px); }
.calender ul li { padding: 15px 0; }
.calender p { margin: 40px 0 0 0; }
.calender .btnSlick.orgPrev { left: 40px; }
.calender .btnSlick.orgNext { right: 40px; }

.academy { width: calc(100% - 225px); }
.academy .box { flex-direction: column; }
.academy .box .inner {
  width: 100%;
  margin: auto;
  padding: 30px;
}
.academy .box .inner:nth-child(1) { margin: auto auto 15px auto; }
.academy .box .innerbox:nth-child(1) { width: 100%; }
.academy .box .innerbox:nth-child(2) { width: 100%; }
.academy .box .initialcost,
.academy .box ul,
.academy .box .notice { width: calc(100% - 30px); }
.academy .box ul { padding: 15px 0; }
.academy .box ul > li + li { margin: 10px 0 0 0; }
.academy .box .initialcost { padding: 18px 0 12px 0; }
.academy .box .initialcost h3 {
  margin: 0 0 5px;
  font-size: 13px;
}
.academy .box .initialcost h3 i { font-size: 13px; }
.academy .box .initialcost ul li { padding: 12px 0; }
.academy .box ul b { font-size: 13px; }
.academy .box .notice { margin: 15px 0 0 0; }
.academy .box .notice p { font-size: 11px; }

.ammount { margin: 7px 0 0 0; }
.ammount hr { width: 7px; height: 8px; }
.ammount .price b { font-size: 24px; }
.ammount .price b:before { padding: 2px 2px 0 0; font-size: 22px; }
.ammount .price:after { bottom: 10px; }

.present { width: calc(100% - 225px); }
.present picture {
  width: 375px;
  margin: 0 45px 0 0;
}
.present .boxText { width: 100%; }
.present h4 { margin: 20px 0 20px 0; }
.present h4 b {
  margin: 5px 0 0 0;
  font-size: 15px;
}
.present p { line-height: 1.65; }
.present p br { display: none; }

.news .frame { width: calc(100% - 225px); }
.news ul li > * { padding: 20px 15px; }
.news ul li time { width: 17.5%; }

.info .entry > * {
  width: calc(100% - 225px);
  padding: 10px 0 10px 10px;
}
.info .entry img { width: 27px; height: 27px; }
.info ul { width: calc(100% - 225px); }

.dirConcept .concept .block:nth-child(odd),
.dirConcept .concept .block:nth-child(even) {
  width: calc(100% - 275px);
  margin: auto auto 15px;
  border: 1px solid rgba(232,228,209,1);
}
.dirConcept .concept .block:nth-child(odd) .inner,
.dirConcept .concept .block:nth-child(even) .inner { padding: 40px 35px 50px; }
.dirConcept .concept .block h3 i { font-size: 15px; }

.listTraining .block { width: 275px; height: 275px; }
.listTraining .block dl { padding: 15px 15px 0; }
.listTraining .block dt { margin: 0 0 12px 0; font-size: 12px; }
.listTraining .block dd i { padding: 3px 8px; font-size: 10px; }
.listTraining .block h3 i { font-size: 15px; }
.listTraining .block h3 b { font-size: 27px; }
.listTraining .block h4 { line-height: 1.5; }

.andmore { width: calc(100% - 225px); padding: 40px 50px 35px; }
.andmore b { text-align: left; line-height: 1.6; }
.andmore br { display: none; }

.discount:before {
  width: 90%;
  height: 280px;
  transform: translate(-50%,50px);
}

.access h2 { margin: 0 0 75px 0; }
.access .block .inner {
  flex-direction: column;
  width: calc(100% - 225px);
  padding: 75px 0;
}
.access .box { width: 100%; padding: 0 0 0 0; }
.access .box ul { padding: 35px 0; }
.access .box ul > li + li { margin: 9px 0 0 0; }
.access .map {
  width: 100%;
  height: 325px;
  margin: 45px 0 0;
}

.dirCoach .coach { width: calc(100% - 225px); }
.listCoach .block picture {
  width: 100%;
  margin: 0 0 50px 0;
}
.listCoach .block .box {
  display: flex;
  flex-wrap: wrap;
  width: calc(100% - 50px);
  margin: auto;
  position: relative;
  top: initial;
  right: initial;
}
.listCoach .block .box:before { display: none; }
.listCoach .block .box h3 {
  width: 100%;
  margin: 0 0 40px 0;
}
.listCoach .block .box > dl + dl { margin: 0 0 0 75px; }
.listCoach .block .msg {
  width: calc(100% - 50px);
  margin: auto;
  padding: 40px 0 0;
}

.listFAQ { width: calc(100% - 225px); }
.listFAQ h3 { margin: 0 0 45px 0; }
.listFAQ dl dt i {
  margin: 0 12px 0 0;
  font-size: 13px;
  line-height: 1.5;
  text-align: left;
}

.dirSubpage .intro { padding: 30px 0 0; }
.listBasic {
  width: calc(100% - 150px);
  margin: 45px auto 0;
}
.listBasic dl { padding: 0 20px; }
.intro { width: calc(100% - 150px); }
.intro .boxText p { width: 100%; padding: 0 20px; }
.intro .boxText p i { text-align: left; }
.intro .boxText p i br { display: none; }
.intro .feature ul > li + li {}

.ttlWelcome i { font-size: 25px; }
.ttlWelcome b { padding: 8px 40px; }
.intro .feature ul li {
  width: 175px;
  height: 175px;
  min-width: 175px;
  min-height: 175px;
}
.intro .feature ul > li + li { margin: 0 0 0 5px; }
.intro .feature ul li i { font-size: 11px; }
.intro .feature ul li i:before { left: -12px; }
.intro .feature ul li i:after { right: -12px; }
.intro .feature ul li b { font-size: 12px; }

.intro .guide { flex-direction: column; }
.intro .guide > li {
  width: 100%;
}
.intro .guide > li + li {
  border-top: 1px solid rgba(180,175,170,1);
  border-left: none;
}
.intro .guide li > * { height: 60px; }
.intro .block p {
  font-size: 12px;
  text-align: left;
}
.intro .block p br { display: none; }



}


@media screen and (max-width:680px) {

header.dirRoot { min-height: initial; }
header.dirRoot h1 { margin: 45px 0 0 0; }
header.dirRoot .copy h2 { width: 265px; }
header.dirRoot .copy h2 b {  font-size: 14px; }
header.dirRoot .copy h2 a {
  padding: 7px 0;
  font-size: 11px;
  border: 2px solid rgba(255,255,255,1);
}
header.dirRoot .copy h2 a:before {
  width: 15px;
  height: 15px;
}

header.dirRoot .topics { min-width: initial; }
header.dirRoot .topics a { padding: 12px 10px 14px; }
header.dirRoot .topics:before {
  width: 20px;
  height: 5px;
}
header.dirRoot .topics time {
  padding: 0 15px 0 10px;
  font-size: 11px;
  letter-spacing: 0;
}
header.dirRoot .topics p {
  padding: 0 0 0 12px;
  font-size: 11px;
  letter-spacing: 0;
}

section.concept { padding: 85px 0; }
.sliderConcept { margin: 55px 0 0 0; }
.sliderConcept .inner { padding: 30px 27px 40px; }
.sliderConcept .inner sub {
  margin: 7px 0 32px 0;
  font-size: 32px;
  letter-spacing: 0;
}
.sliderConcept .inner h3 { margin: 0 0 30px 0; }
.sliderConcept .inner h3 i {
  font-size: 13px;
  line-height: 1.6;
}
.sliderConcept .inner h3 i:first-child:before,
.sliderConcept .inner h3 i:first-child:after {
  width: 11px;
  height: 11px;
  top: -5px;
}
.sliderConcept .inner p {
  min-height: 160px;
  padding: 30px 0 0 0;
}
.sliderConcept .inner p:before { height: 1px; }
.sliderConcept .slick-dots { margin: 35px 0 0 0; }
.sliderConcept .slick-dots li { width: 8px; height: 8px; }

.philosophy {
  width: calc(100% - 50px);
  margin: 65px auto 0 auto;
}
.philosophy h2 {
  margin: 0 0 10px 0;
  font-size: 15px;
  letter-spacing: .03rem;
  white-space: nowrap;
}
.philosophy .text h3 {
  width: 125px;
  margin: 0 25px 40px 0;
}
.philosophy .text p { font-size: 12px; }

.concept .showmore { margin: 50px 0 0 0; }

section.date { padding: 70px 0; }
section.date h2 > * {
  color: rgba(230,239,244,.35);
  font-size: 77px;
  letter-spacing: -.04px;
}
section.date h2 i {
  top: 45px;
  left: 50%;
  transform: translate(-50%,0);
}
.calender h4 {
  margin: 0 0 20px 0;
  font-size: 13px;
}
.calender .block { padding: 0 20px; }
.calender h3 i {
  font-size: 15px;
  letter-spacing: -.03rem;
}
.calender h3 b {
  margin: 5px 0 30px 0;
  font-size: 35px;
}
.calender .block .box {
  flex-wrap: wrap;
  height: auto;
  padding: 0 0 10px 0;
}
.calender .block .box div {
  width: 33.333%;
  height: 110px;
}
.calender .block .box div:nth-child(odd),
.calender .block .box div:nth-child(even) { margin: 0 0 10px; }
.calender .block .box div span:after {
  width: calc(100% - 10px);
  height: 110px;
  border-radius: 3px;
  border: initial;
}
.calender .block .box div i {
  font-size: 25px;
  letter-spacing: 0;
}
.calender .btnSlick { top: -5px; }
.calender .btnSlick.orgPrev { left: 20px; }
.calender .btnSlick.orgNext { right: 20px; }
.calender .noSchedule {
  width: calc(100% - 20px);
  text-align: center;
}
.calender p {
  width: calc(100% - 75px);
  margin: 15px auto 0;
  font-size: 11px;
  text-align: left;
}
.calender p br { display: none; }
.calender ul {
  width: calc(100% - 50px);
  margin: 35px auto 10px;
}
.calender ul li { padding: 12px 0; }
.calender ul li b {
  font-size: 13px;
  letter-spacing: -.01rem;
}

section.course { padding: 70px 0 75px 0; }
.academy {
  width: calc(100% - 50px);
  margin: 50px auto 0 auto;
}
.academy .box .inner {
  padding: 30px 10px;
  border-radius: 5px;
}
.academy .box h3 { margin: 10px 0 20px 0; }
.academy .box h3 i { font-size: 27px; }
.academy .box h3 b { font-size: 12px; }
.academy .box ul { padding: 12px 0; }
.academy .box ul b { font-size: 12px; }
.academy .box ul > li + li { margin: 7px 0 0 0; }
.academy .box .initialcost h3 { margin: 0 0 3px 0; }
.academy .box .initialcost h3 i { font-size: 12px; }
.academy .box .initialcost h3 i:before {
  border-width: 7px 4px 0 4px;
  top: 2px;
}
.academy .box .initialcost ul li,
.academy .box .initialcost ul li:first-child { border-top: 1px solid rgba(232,228,209,1); }
.academy .box .initialcost ul li:last-child { border-bottom: 1px solid rgba(232,228,209,1); }
.academy .box .initialcost ul li b { font-size: 13px; }

.ammount .price b { letter-spacing: -.08rem; }
.academy .box .notice p { font-size: 10px; }

.present {
  flex-direction: column;
  width: calc(100% - 50px);
  margin: 30px auto 0 auto;
}
.present picture {
  width: 65%;
  margin: 0 auto 20px;
}
.present h3 {
  width: 100%;
  padding: 10px 0;
  font-size: 13px;
}
.present h3 i { letter-spacing: -.05rem; }
.present h4 {
  margin: 30px 0 25px;
}
.present h4 i { letter-spacing: -.02rem; }
.present h4 b {
  margin: 10px 0 0 0;
  font-size: 13px;
  letter-spacing: 0;
}
.present p { line-height: 1.8; }
.present p small { margin: 20px 0 0 0; }

.course .showmore { margin: 30px 0 0 0; }

.news { padding: 30px 0 50px; }
.news .frame { width: calc(100% - 50px); }
.news ul li > * {
  flex-direction: column;
  padding: 20px 0;
}
.news ul li time { width: 100%; }
.news ul li i {
  width: 100%;
  padding: 9px 25px 0 0;
}
.news ul li i span {
  width: 65px;
  height: 17px;
  margin: 0;
  font-size: 9px;
  letter-spacing: -.03rem;
  position: absolute;
  top: 18px;
  left: 95px;
}
.news ul li hr {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(0,-60%;);
}
.news .showmore a { width: 100%; }
.news .bgShape { display: none; }

.info .entry > * {
  width: calc(100% - 50px);
  padding: 13px 0 13px 10px;
}
.info .entry img {
  width: 22px;
  height: 22px;
  margin: 0 10px 0 0;
}
.info .entry i { font-size: 11px; letter-spacing: -.01rem; }
.info .entry em { font-size: 12px; }
.info ul { width: calc(100% - 50px); }

.dirConcept .concept .ttlBasic { margin: 0 0 55px 0; }
.dirConcept .concept .frame { flex-direction: column; }
.dirConcept .concept .block:nth-child(odd),
.dirConcept .concept .block:nth-child(even) { width: calc(100% - 50px); }
.dirConcept .concept .block:nth-child(odd) .inner,
.dirConcept .concept .block:nth-child(even) .inner { padding: 35px 25px 45px; }
.dirConcept .concept .block h3 { margin: 0 auto 20px auto; }
.dirConcept .concept .block h3 i { font-size: 14px; }
.dirConcept .concept .block h3 i sub {
  width: 110px;
  height: 62px;
  font-size: 9px;
  top: -65px;
  left: -50px;
}
.dirConcept .concept .block h4 {
  width: 52px;
  height: 52px;
}
.dirConcept .concept .block h4 i { font-size: 23px; }

.dirConcept .training { padding: 75px 0 0; }
.listTraining {
  width: calc(100% - 50px);
  margin: 50px auto 0;
}
.listTraining .block {
  width: 100%;
  height: 265px;
  margin: 0 0 10px;
}
.listTraining .block hr { border-radius: 10px; }
.listTraining .block h4 {
  font-size: 13px;
  line-height: 1.7;
}

.andmore {
  width: calc(100% - 50px);
  padding: 35px 25px 35px;
}
.andmore i {
  font-size: 22px;
  letter-spacing: -.05rem;
}
.andmore b { line-height: 1.8; }

.discount { padding: 110px 0 35px 0; }
.discount:before { transform: translate(-50%,-50px); }
.discount h3 i { font-size: 15px; }
.discount h3 b {
  margin: 15px 0 35px;
  letter-spacing: -.05rem;
}
.discount p {
  width: calc(100% - 50px);
  margin: auto;
  text-align: left;
}
.discount p br { display: none; }
.course .showmore { margin: 10px 0 0 0; }
.course .showmore a:before { display: none; }
.course .bgShape { display: none; }

.dirSchool .access { padding: 75px 0 50px; }
.access h2 { margin: 0 0 55px 0; }
.access .block .inner {
  flex-direction: column-reverse;
  width: 100%;
  padding: 0 0 75px;
}
.access .map {
  height: 275px;
  margin: 0;
}
.access .box {
  width: calc(100% - 50px);
  padding: 50px 0 0 0;
}
.access .box h3 { font-size: 14px; }
.access .box ul { padding: 25px 0 35px; }

.dirCoach .coach { width: 100%; }
.listCoach .block .box {
  flex-direction: column;
  flex-wrap: nowrap;
}
.listCoach .block .box h3 i {
  font-size: 25px;
  letter-spacing: -.08rem;
}
.listCoach .block .box > dl + dl { margin: 35px 0 0 0; }
.listCoach .msg p br { display: none; }

.category .inner {
  width: calc(100% - 50px);
  margin: 45px auto 0 auto;
}
.dirNews .news { padding: 40px 0 25px; }
.dirNews .news .frame { margin: 50px auto 0 auto; }

.pagination { padding: 0 0 20px 0; }

.verDetail h2 {
  width: calc(100% - 50px);
  margin: auto;
  font-size: 15px;
  align-items: flex-start;
}
.verDetail .category .inner { width: calc(100% - 50px); }

.backPage i { width: 25px; }
.backPage b { font-size: 11px; letter-spacing: -.03rem; }

.listFAQ {
  width: calc(100% - 50px);
  margin: 50px auto 0;
}
.listFAQ dl dt em {
  width: 42px;
  height: 42px;
  font-size: 17px;
}
.listFAQ dl dt i {
  height: initial;
  padding: 5px 1.5em 0 65px;
}
.listFAQ dl dd { padding: 12px 0 0 80px; }
.listFAQ dl dt.active em.answer { left: 15px; }

.intro {
  width: calc(100% - 50px);
  padding: 30px 0 0;
}
.intro .boxText p { padding: 0; }
.dirSubpage .intro h3 { font-size: 13px; }

.listBasic { width: calc(100% - 50px); }
.listBasic dl { padding: 0; }
.listBasic dl dt { font-size: 13px; }
.listBasic dl dd ul { padding: 0 0 0 15px; }
.listBasic dl dd ul li { text-align: left; }
.listBasic dl dd span em {
  font-size: 18px;
  letter-spacing: -.05rem;
  text-align: left;
}

.intro .feature ul {}
.ttlWelcome i {
  font-size: 19px;
  letter-spacing: .03rem;
}
.ttlWelcome b {
  margin: 25px 0 0 0;
  font-size: 11px;
}
.verThanks p { align-items: flex-start; }
.verThanks p > * { text-align: left; }
.verThanks p > * br { display: none; }

.intro .feature ul { padding: 0 0 120px 0; }
.intro .feature ul li {
  width: 145px;
  height: 145px;
  min-width: 145px;
  min-height: 145px;
}
.intro .feature ul > li + li { margin: 0; }
.intro .feature ul li:nth-child(2) {
  margin: 0 -65px;
  position: relative;
  top: 130px;
}
.intro .feature ul li i { font-size: 10px; }
.intro .feature ul li i:before,
.intro .feature ul li i:after {
  width: 8px;
  height: 8px;
  top: -6px;
}
.intro .feature ul li i:before { left: -10px; }
.intro .feature ul li i:after { right: -10px; }
.intro .feature ul li b { font-size: 10px; }
.intro .guide { margin: 35px 0 0 0; }
.intro .guide li { width: 100%; }
.intro .guide li > * { height: 50px; }

.verPreopen { padding: 100px 0; }
.verPreopen .ttlBasic i { font-size: 24px; }

}
