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

/*
	00 Fonts
	01 Layout
	02 Trigger
*/

/*
00 Fonts
========================================================================== */
/*

font-family: dnp-shuei-gothic-gin-std,sans-serif;
font-weight: 400;
font-style: normal;

font-family: dnp-shuei-gothic-gin-std,sans-serif;
font-weight: 500;
font-style: normal;

font-family: dnp-shuei-gothic-gin-std,sans-serif;
font-weight: 600;
font-style: normal;

*/

/*
01 Layout
========================================================================== */
:root{
  /* color */
  --black:rgba(0,0,0,1);
  --white:rgba(242,245,252,1);
  --white-tin:rgba(249,252,255,1);
  --white-mid:rgba(228,230,232,1);
  --white-tic:rgba(180,185,185,1);
  --gray:rgba(33,34,35,1);
  --gray-tin:rgba(48,50,52,1);
  --gray-mid:rgba(85,87,90,1);
  --gray-tic:rgba(123,125,127,1);
  --ash:rgba(235,236,245,1);
  --red:rgba(190,14,24,1);
}

* {
	color: var(--white);
	font-family: dnp-shuei-gothic-gin-std,sans-serif;
	font-weight: 600;
	font-style: normal;
	box-sizing: border-box;
	text-decoration: none;
}

html { height: 100%; }
body {
	height: 100%;
	font-size: 13px;
	text-align: justify;
	line-height: 2;
	margin: 0;
	padding: 0;
	background-color: var(--gray);
  word-break: break-all;
}
h1,h2,h3,h4,div,dl,dt,dd,ul,li,img,a,p,span,iframe,small,strong,figure,address,select,input,button,textarea,i,b,hr,sub,time {
	margin:0;
	padding:0;
	color:inherit;
	font-family: inherit;
	font-size: inherit;
	font-style:inherit;
	font-weight: inherit;
	list-style:none;
	text-align: justify;
	outline:none;
	background: none;
	border: none;
}
select {
	cursor: pointer;
	background: transparent;
	background-image: none;
	box-shadow: none;
	-webkit-appearance: none;
	appearance: none;
}
select::-ms-expand { display: none; }
input {}
button { cursor: pointer; }
p { line-height: 2; }
mark {}
picture { display: block; }
br { line-height: 1; }
sub { bottom: initial; }
img { display: block; width: 100%; }
svg { display: block; }

hr {}

main { overflow: hidden; }
section { position: relative; }

.verWid { display: block !important; }
.verMid { display: none !important; }
.verNar { display: none !important; }

.emFont { font-family: 'Open Sans Condensed'; }


/* underconstruction */
.underconstruction {
	padding: 300px;
}
.underconstruction p {
	margin: auto;
	text-align: center;
}


/* Navigation */
.global {}
.global ul {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
}
.global ul li {
  line-height: 2;
  letter-spacing: .07rem;
}
.global ul li a {
  display: inline-flex;
  padding: 0 3px;
  line-height: 1.5;
  overflow: hidden;
  position: relative;
  transition: .3s ease-out;
}
.global ul li a:before {
  content: '';
  width: 100%;
  height: 100%;
  background-color: var(--white);
  position: absolute;
  top: 0;
  left: -100%;
  z-index: -1;
  transition: .3s ease-out;
}
.global ul li a:hover { color: var(--black); }
.global ul li a:hover:before { left: 0; }

.sns {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.sns a {
  display: block;
  width: 21px;
  transition: .5s ease-out;
}
.sns a:hover { transform: scale(.85); opacity: .3; }

.clip {
	width: 160px;
	height: 160px;
	overflow: hidden;
	position: absolute;
	top: 0;
	right: 0;
	transition: .4s ease-out;
}
.clip a {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	padding: 0 0 12px 10px;
}
.clip a > * {
 	font-size: 13px;
	text-align: center;
	line-height: 1.5;
	letter-spacing: .08rem;
}
.clip a i {}
.clip a b { margin: 5px 0 0 0; }
.clip hr {
	width: 100%;
	height: 100%;
	background-image: url(/images/common/bg-clip.svg);
	background-position: right top;
	background-repeat: no-repeat;
	background-size: cover;
	opacity: .75;
	position: absolute;
	top: 0;
	right: 0;
	z-index: -1;
	transition: .3s ease-out;
}
.clip:hover {
	width: 170px;
	height: 170px;
}
.clip:hover hr { opacity: .9; }


/* overlay */
.overlayNav {
	width: 57.5%;
	height: 100%;
	background-color: rgba(33,34,35,.95);
	position: fixed;
	top: 0;
	left: 0;
	z-index: 100;
}
.overlayNav.verClose { left: -57.5%; }
.overlayNav.verOpen {
	height: 100%;
	left: 0;
	filter: drop-shadow(7px 0 7px rgba(0,0,0,.4));
}
.overlayNav section {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 100%;
	padding: 0 0 10px 0;
}
.overlayNav h2 img { width: 95px; }
.overlayNav .global {	padding: 0 0 0 100px; }
.overlayNav .global ul {}
.overlayNav .global > ul + ul { margin: 25px 0 0 0; }
.overlayNav .global ul li {
	font-size: 12px;
	line-height: 1.8;
	letter-spacing: .05rem;
	position: relative;
}
.overlayNav .global ul > li + li { margin: 8px 0 0 0; }
.overlayNav .global > ul + ul li { font-size: 11px; letter-spacing: .04rem; }
.overlayNav .global > ul + ul > li + li { margin: 5px 0 0 0; }

li.opener button {
	display: block;
	width: 100%;
	padding: 0 3px;
	position: relative;
	cursor: pointer;
}
li.opener button:before,
li.opener button:after {
	content: '';
	width: 11px;
	height: 1px;
	background-color: var(--white);
	position: absolute;
	top: 50%;
	right: 0;
	transition: .8s ease-out;
}
li.opener button:before { transform: rotate(0); }
li.opener button:after { transform: rotate(90deg); }
li.opener button:hover:before { transform: rotate(180deg); }
li.opener button:hover:after { transform: rotate(270deg); }
li.opener button.active:before {}
li.opener button.active:after { opacity: 0; }
li.opener p {
	display: none;
	padding: 0 0 0 25px;
	margin: 8px 0;
	font-size: 11px;
	position: relative;
}
li.opener p:before {
	content: '';
	width: 1px;
	height: 100%;
	background-color: var(--white);
	position: absolute;
	top: 0;
	left: 7px;
}
li.opener p span {
	display: flex;
	flex-direction: column;
}
li.opener p span > * {
  margin: 2px 0;
  white-space: nowrap;
}

.overlayNav .global .sns { margin: 30px 0 0 0; }
.overlayNav .global .sns a {
	width: 21px;
	position: relative;
}
.overlayNav .global .sns > a + a { margin: 0 0 0 8px; }
.overlayNav .welcome {
	margin: 40px 0 0 0;
	padding: 0 75px 0 0;
	position: relative;
}
.overlayNav .welcome i {
	display: block;
	padding: 0 0 10px 0;
	font-size: 12px;
	letter-spacing: .05rem;
	white-space: nowrap;
}
.overlayNav .welcome hr {
	width: 100%;
	height: 1px;
	background-color: var(--white);
	position: absolute;
	bottom: 0;
	left: 0;
	transition: 1.5s ease-out;
}
.overlayNav .welcome:before {
	content: '';
	width: 12px;
	height: 1px;
	background-color: var(--white);
	position: absolute;
	bottom: 3px;
	right: 0;
	transform: translate(0,-50%) rotate(35deg);
	transition: .5s ease-out;
}
.overlayNav .welcome:hover hr { left: 25px; }
.overlayNav .welcome:hover:before { right: -25px; }

.overlayView {
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	padding: 0 0 15px 0;
	background-color: rgba(33,34,35,.93);
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1000;
}
.overlayView.verClose { display: none; }
.overlayView.verOpen { display: flex; }
.overlayView .window {
	width: 100%;
  height: 100%;
	position: relative;
}
.slick-initialized .slick-slide { display: flex !important; }
.slick-list, .slick-track { height: 100%; }
.overlayView .box {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: 100%;
}
.overlayView .box .text,
.overlayView .box .hrWrap { height: initial; }
.overlayView .box > * {
	width: 450px;
	margin: 0 auto;
}
.overlayView h2 { padding: 0 0 25px 0; }
.overlayView h2 > * {
	display: block;
	line-height: 1.5;
}
.overlayView h2 time {
	font-size: 27px;
	letter-spacing: .08rem;
}
.overlayView h2 time small {
	display: block;
	font-size: 14px;
}
.overlayView h2 i {
	font-size: 14px;
	letter-spacing: .08rem;
}
.overlayView hr {
	height: 0;
	border-top: 1px solid var(--white-tic);
}
.overlayView ul { padding: 25px 0; }
.overlayView ul li {
	padding: 0 0 0 15px;
	font-size: 14px;
	position: relative;
}
.overlayView ul li:before {
	content: '';
	width: 5px;
	height: 5px;
	border: 1px solid var(--white);
	position: absolute;
	top: 11px;
	left: 0;
}
.overlayView ul li sub { padding: 0 0 0 3px; }
.overlayView ul li i { letter-spacing: .02rem; }
.overlayView ul li b { position: relative; }
.overlayView ul li b:before {
	content: '=';
	padding: 0 2px 0 4px;
}
.overlayView ul li time { letter-spacing: .05rem; }
.overlayView ul li time > sub + sub {}
.overlayView ul li time > sub + sub:before {
	content: '〜';
	padding: 0 2px 0 0;
}
.overlayView ul li span {
	font-size: 12px;
	letter-spacing: .05rem;
}
.overlayView h3 {
	line-height: 1.4;
	padding: 25px 0 18px 0;
}
.overlayView h3 a {
	display: block;
	width: 100%;
	font-size: 12px;
	letter-spacing: .03rem;
	padding: 0 30px 0 0;
	position: relative;
	transition: .3s ease-out;
}
.overlayView h3 a:before {
	content: '';
	width: 20px;
	height: 26px;
	background-image: url(/images/common/ico-mappin.svg);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translate(0,-50%);
	transition: .6s ease-out;
}
.overlayView h3 a:hover:before { transform: translate(0,-50%) rotate(-360deg); }
.overlayView h3 a > * { display: block; }
.overlayView h3 i sub {
	padding: 1px 12px 1px;
	border: 1px solid var(--white);
	font-size: 11px;
	letter-spacing: .05rem;
}
.overlayView h3 i span { position: relative; }
.overlayView h3 i span:before {
	content: '=';
	padding: 0 3px 0 6px;
}
.overlayView h3 b { margin: 5px 0 0 0; }
.overlayView h3 b small { font-size: 12px; }
.overlayView .notes {}
.overlayView .notes p { font-size: 12px; }

.overlayView.verCalender {}

.overlayView.verCurriculum {}
.overlayView.verCurriculum picture { padding: 0 0 25px 0; }
.overlayView.verCurriculum h2 sub { margin: 0 0 12px 0; }

.overlayView.verWear .box > * { width: 45%; }
.overlayView.verWear picture {
	padding: 15px 0;
	background-color: var(--white);
}
.overlayView.verWear picture img {
	width: initial;
  height: 67.5vh;
	margin: auto;
}
.overlayView.verWear .box .text { height: initial; }
.overlayView.verWear h2 { margin: 20px 0 0 0; }
.overlayView.verWear h2 > * { text-align: center; }
.overlayView.verWear h2 i {
	font-size: 13px;
	letter-spacing: .03rem;
}
.overlayView.verWear h2 b {
	margin: 5px 0 0 0;
	font-size: 12px;
}

button.close {
	width: 40px;
	height: 60px;
	position: absolute;
	top: 35px;
	left: 45px;
}
button.close i {
	display: block;
	height: 45px;
}
button.close i hr {
	width: 40px;
	height: 1px;
	background-color: var(--white);
	position: absolute;
	top: 50%;
	left: 50%;
	transition: .5s ease-out;
}
button.close i hr:nth-child(1) { transform: translate(-50%,-50%) rotate(45deg); }
button.close i hr:nth-child(2) { transform: translate(-50%,-50%) rotate(-45deg); }
button.close i hr:nth-child(3) { opacity: 0; }
button.close:hover i hr:nth-child(1) {
	width: 30px;
	left: calc(50% + 3px);
	transform: translate(-50%,-10px) rotate(-90deg);
}
button.close:hover i hr:nth-child(2) {
	width: 30px;
	left: calc(50% + -3px);
	transform: translate(-50%,0) rotate(90deg);
}
button.close b {
	margin: 10px 0 0 0;
	display: block;
	font-size: 10px;
	text-align: center;
	letter-spacing: .10rem;
	position: relative;
  white-space: nowrap;
}


/* General */
.frame {
	max-width: 1440px;
  margin: auto;
  position: relative;
  z-index: 1;
}


/* Pattern */
.pattern {
	display: flex;
	width: 50%;
	height: 1100px;
	position: absolute;
	overflow: hidden;
	opacity: .1;
	z-index: 0;
}
.pattern.verLeft { left: 0; }
.pattern.verRight { right: 0; }
.pattern.verCenter {
	width: 100%;
	left: 50%;
	transform: translate(-50%,0);
}
.pattern hr {
	display: block;
	width: 100%;
	height: 100%;
	background-image: url(/images/common/pattern.svg);
	background-size: 1520px;
	background-repeat: no-repeat;
	position: relative;
	overflow-x: hidden;
}
.pattern.verLeft hr { background-position: right center; }
.pattern.verRight hr { background-position: left center; }
.pattern.verCenter hr { background-position: center; }

.dirRoot .boxCalender .pattern { top: -47.5%; }
.dirRoot .boxSchool .pattern.verTop { width: 40%; top: -22.5%; }
.dirRoot .boxSchool .pattern.verBottom { top: 52%; }
.dirRoot .boxNews .pattern { top: -22.5%; }
.dirConcept .boxIntro .pattern { width: 75%; top: -80%; }
.dirConcept .boxOrganize .pattern { top: -60%; }
.dirSchool .boxIntro .pattern { top: -10%; }
.dirSchool .boxOutline .pattern.verTop { top: 11%; }
.dirSchool .boxOutline .pattern.verMiddle { width: 57.5%; top: 44.5%; }
.dirSchool .boxOutline .pattern.verMiddle02 { bottom: 12.5%; }
.dirSchool .boxOutline .pattern.verBottom { bottom: -11%; }
.dirSchool .boxApproach .pattern { top: -25%; }
.dirSchool .boxReference .pattern.verTop { top: -45%; }
.dirSchool .boxReference .pattern.verBottom { top: 50%; }
.dirSchool .boxCourse .pattern { width: 60%; top: -10%; }
.dirSchool .boxPrice .pattern { top: -45%; }
.dirSchool .boxInitial .pattern.verTop { top: -47.5%; }
.dirSchool .boxInitial .pattern.verBottom { top: 50%; }
.dirJoin .boxFlow .pattern.verTop { width: 45%; top: -10%; }
.dirJoin .boxFlow .pattern.verBottom { width: 80%; bottom: -15%;  }
.dirCoach .boxSupervisor .pattern { width: 67.5%; top: -32.5%; }
.dirCoach .boxCoach .pattern.verTop { width: 25%; top: -17.5%; }
.dirCoach .boxCoach .pattern.verBottom { width: 75%; bottom: -6.5%; }
.dirAccess .boxAccess .pattern.verTop { width: 75%; top: -20.5%; }
.dirAccess .boxAccess .pattern.verBottom { width: 80%; bottom: -40%; }
.dirNews .boxNews .pattern { top: -17.5%; }
.dirFaq .boxFaq .pattern { width: 60%; top: -2.5%; }
.dirForm .boxForm .pattern { width: 65%; top: -3%; }

.typeGeneral .pattern.verTop { width: 65%; top: -2.5%; }
.typeGeneral .verCompany .pattern { width: 65%; top: -15%; }
.typeGeneral .verMember .pattern.verMiddle { top: 40%; }
.typeGeneral .verMember .pattern.verBottom { bottom: -2.5%; }
.typeGeneral .verPrivacy .pattern.verBottom { bottom: -2.5%; }


/* Slick Slider */
.wrapSlider .window,
.wrapSlider .window .box {
  width: 100%;
  height: 100%;
}
.wrapSlider .window div { height: 100%; }
.wrapSlider .box {
  position: relative;
  background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}
.wrapSlider .box hr.mask {
  width: 100%;
  height: 100%;
  background-color: rgba(0,0,0,.37);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
}
.wrapSlider .box > * {
  position: relative;
  z-index: 1;
}
.wrapSlider .boxWrap h2 {
	display: flex;
	flex-direction: column;
}
.wrapSlider .boxWrap h2 > * {
  display: block;
  text-align: center;
}
.wrapSlider .boxWrap h2 i { letter-spacing: .05rem; }
.wrapSlider .boxWrap h2 b {
  font-size: 21px;
  line-height: 1.2;
  letter-spacing: .12rem;
}
.wrapSlider .orgDots {
  width: 30px;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(0,-49%);
  z-index: 1;
}
.wrapSlider .orgDots li {
  display: flex;
  justify-content: flex-end;
  cursor: pointer;
  font-size: 0;
}
.wrapSlider .orgDots > li + li { margin: 6px 0 0 0; }
.wrapSlider .orgDots li button {
  width: 10px;
  height: 1px;
  background-color: var(--white);
  transition: .3s ease-out;
}
.wrapSlider .orgDots li:hover button,
.wrapSlider .orgDots li.slick-active button { width: 100%; }

.slick-arrow {
  font-size: 0;
  position: absolute;
  z-index: 10;
}
.slick-arrow {
  width: 40px;
  height: 35px;
  top: calc(50% - 12px);
  transition: .5s ease-out;
}
.slick-arrow:hover { width: 60px; }
.slick-arrow:before,
.slick-arrow:after {
  content: '';
  height: 1px;
  background-color: var(--white); 
  position: absolute;
  bottom: 50%;
  left: 0;
}
.slick-arrow:before {
  width: 12px;
  transform: translate(0,-3px) rotate(-30deg);
  transition: .5s ease-out;
}
.slick-arrow:after {
  width: 40px;
  transition: .5s ease-out;
}
.slick-arrow.slick-prev { left: 7.5%; }
.slick-arrow.slick-next { right: 7.5%; transform: scaleX(-1); }
.slick-arrow:hover:after { width: 25px; }
.slick-arrow.slick-disabled { display: none !important; }


/* Header */
header {
	position: relative;
	z-index: 10;
}
header .humbNav {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 85px;
	position: fixed;
	top: 48px;
	left: 48px;
}
header h1 {
	width: 100%;
	margin: 0 0 22px;
	position: relative;
	left: 3px;
}
header h1 img {}
header .humbNav button {
	width: 42px;
	height: 40px;
}
header .humbNav i hr {
	width: 100%;
	height: 2px;
	background-color: var(--white);
	position: relative;
	left: 0;
	transition: .5s ease-out;
}
header .humbNav i > hr + hr { margin: 3px 0 0 0; }
header .humbNav b {
	margin: 6px 0 0 0;
	display: block;
	font-size: 10px;
	text-align: center;
	letter-spacing: .18rem;
  position: relative;
  left: 2px;
  white-space: nowrap;
}
header .humbNav button:hover i hr:nth-child(1) { left: 7px; }
header .humbNav button:hover i hr:nth-child(2) { left: 2px; }
header .humbNav button:hover i hr:nth-child(3) { left: -3px; }
header .humbNav.verWHT i hr { background-color: var(--white); }
header .humbNav.verWHT b { color: var(--white); }
header .humbNav.verBLK i hr { background-color: var(--gray); }
header .humbNav.verBLK b { color: var(--gray); }

header .linkPage {
	position: absolute;
	top: 137px;
	left: 50%;
  transform: translate(-45px,0);
	z-index: 2;
}
header .linkPage ul {
	display: flex;
	justify-content: flex-end;
	align-items: center;
}
header .linkPage ul li {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 160px;
  height: 27px;
  border: 1px solid rgba(242,245,252,.75);
  border-right: none;
}
header .linkPage ul li:last-child { border-right: 1px solid rgba(242,245,252,.75); }
header .linkPage ul li > * {
  display: block;
  width: 100%;
  text-align: center;
  position: relative;
  overflow: hidden;
  transition: .3s ease-out;
}
header .linkPage ul li > *:before {
  content: '';
  width: 100%;
  height: 100%;
  background-color: var(--white);
  position: absolute;
  top: 0;
  left: -100%;
  transition: .3s ease-out;
  z-index: -1;
}
header .linkPage ul li.active { pointer-events: none; }
header .linkPage ul li.active > *:before { background-color: rgba(242,245,252,.25); }
header .linkPage ul li > *:hover { color: var(--gray); }
header .linkPage ul li.active > *:before,
header .linkPage ul li > *:hover:before { left: 0; }
header .linkPage ul li i {
  font-size: 11px;
  letter-spacing: .02rem;
  white-space: nowrap;
}

header .arrow {
	display: flex;
	justify-content: center;
	width: 35px;
	height: 60px;
	position: fixed;
	bottom: 0;
	left: 72px;
	cursor: pointer;
}
header .arrow hr {
	width: 1px;
	height: 35px;
	background-color: var(--white);
	position: absolute;
	left: 50%;
	bottom: 25px;
	transition: 1.2s ease-out;
}
header .arrow:before {
	content: '';
	width: 1px;
	height: 12px;
	background-color: var(--white);
	position: absolute;
	bottom: 25px;
	left: 15px;
	transform: rotate(-30deg);
	transition: .3s ease-out;
}
header .arrow:hover hr,
header .arrow:hover:before { bottom: 0; }
header .arrow.verWHT hr,
header .arrow.verWHT:before { background-color: var(--white); }
header .arrow.verBLK hr,
header .arrow.verBLK:before { background-color: var(--gray); }


/* footer */
footer {
	position: relative;
	overflow: hidden; 
	z-index: 1;
}
footer .wrapSlider { height: 380px; }
footer .wrapSlider .box {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
footer .wrapSlider .box h2 {
  display: flex;
  flex-direction: column-reverse;
	justify-content: center;
	align-items: center;
	height: 100%;
}
footer .wrapSlider .box h2 > * { color: var(--white-tic); }
footer .wrapSlider .box h2 i {
  margin: 5px 0 0 0;
  font-size: 11px;
	text-align: center;
  line-height: 1.5;
  letter-spacing: .05rem;
  transform: scaleY(.92);
}
footer .wrapSlider .box h2 sub {
  margin: 0 0 15px 0;
  font-size: 21px;
  letter-spacing: .1rem;
}

/*  Blocks */
footer { position: relative; }
footer .block {
	display: flex;
	justify-content: center;
	position: relative;
}
footer .block.verLogo h2 { margin: 105px 0 65px; }
footer .block.verLogo h2 img { width: 99px; }

footer .block.verNav { align-items: center; }
footer .block.verNav:before,
footer .block.verNav:after {
	content: '';
	width: 1px;
	height: 100%;
	background-color: var(--white-tic);
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(0,-50%);
}
footer .block.verNav:after { display: none; }
footer .block.verNav > * {
	display: flex;
	width: 50%;
}
footer .block.verNav .global {
	flex-direction: column;
	justify-content: center;
	align-items: flex-end;
	padding: 0 35px 0 0;
}
footer .block.verNav .global ul {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	width: 340px;
}
footer .block.verNav .global > ul + ul { margin: 12px 0 0 0; }
footer .block.verNav .global ul li {
	display: block;
	width: 50%;
	line-height: 1.7;
}
footer .block.verNav .global ul li a {
	font-size: 11px;
	letter-spacing: .05rem;
	transition: .3s ease-out;
}
footer .block.verNav .global ul li a:hover { opacity: .7; }
footer .block.verNav .link {
	flex-direction: column;
	justify-content: flex-start;
	padding: 0 0 0 75px;
}
footer .block.verNav .link dl {
	display: flex;
	align-items: center;
}
footer .block.verNav .link > dl + dl { margin: 35px 0 0 0; }
footer .block.verNav .link dl > * {	display: flex; }
footer .block.verNav .link dl dt {
	justify-content: center;
	width: 100px;
	margin: 0 25px 0 0; 
}
footer .block.verNav .link dl dt img { position: relative; }
footer .block.verNav .link dl.verTechne dt img { width: 80px; top: -3px; }
footer .block.verNav .link dl.verN14 dt img { width: 70px; top: -3px; }
footer .block.verNav .link dl dd { flex-direction: column; }
footer .block.verNav .link dl dd .readmore {
	width: 260px;
	padding: 0 50px 0 0;
	font-size: 11px;
  letter-spacing: 0;
  white-space: nowrap;
}
footer .block.verNav .link dl dd > .readmore + .readmore { margin: 12px 0 0 0; }
footer .block.verNav .link dl dd .readmore small { font-size: 10px; }
footer .block.verNav .link dl dd .readmore hr {
  width: 30px;
  bottom: 4px;
}
footer .block.verNav .link dl dd .readmore:before { width: 10px; }

footer .block.verSNS { padding: 50px 0 30px; }
footer .block.verSNS nav {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
footer .block.verSNS ul {
	display: flex;
  justify-content: center;
	align-items: center;
}
footer .block.verSNS ul > li + li { margin: 0 0 0 15px; }
footer .block.verSNS ul li a {
	display: block;
	width: 21px;
	transition: .3s ease-out;
	position: relative;
}
footer .block.verSNS ul:nth-child(2) { margin: 10px 0 0 0; }
footer .block.verSNS ul:nth-child(2) a { width: 22px; }
footer .block.verSNS ul li a:hover { opacity: .7; }

footer .copyright {
	padding: 0 0 80px 0;
	font-size: 1px;
	text-align: center;
	letter-spacing: .05rem;
}


/* Readmore */
.readmore {
  padding: 0 72px 0 0;
  font-size: 12px;
  line-height: 1.5;
  letter-spacing: .03rem;
  position: relative;
}
.readmore:before {
  content: '' ;
  width: 15px;
  height: 1px;
  background-color: rgba(215,220,220,1); 
  position: absolute;
  bottom: 6px;
  right: 0;
  transform: rotate(30deg);
  transition: .3s ease-out;
} 
.readmore hr {
  width: 60px;
  height: 1px;
  background-color: rgba(215,220,220,1); 
  position: absolute;
  bottom: 2px;
  right: 0;
  transition: 1s ease-out;
}
.readmore:hover:before,
.readmore:hover hr { right: -30px; }

/* linkSquare */
.linkSquare {
  width: 140px;
  height: 140px;
}
.linkSquare:before {
  content: '';
  width: 100%;
  height: 100%;
  background-color: rgba(190,14,24,.85);
  position: absolute;
  top: 0;
  left: 0;
}
.linkSquare .readmore {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  padding: 0;
  color: var(--white);
}
.linkSquare .readmore:before {
  bottom: 42px;
  right: 38px;
}
.linkSquare .readmore hr {
  bottom: 38px;
  right: 38px;
}
.linkSquare .readmore:hover:before,
.linkSquare .readmore:hover hr { right: 25px; }

/* linkBar */
.linkBar {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 48px;
  line-height: 1;
  text-align: center;
  background-color: rgba(190,14,24,.85);
  transition: .3s ease-out;
}
.linkBar:hover { opacity: .85 }
.linkBar span {
  display: block;
  width: 100%;
  padding: 0;
  line-height: 1;
  text-align: center;
  color: var(--white);
}
.linkBar span hr,
.linkBar span:before { right: 20px; }
.linkBar span:hover hr,
.linkBar span:hover:before { right: 0; }


/* title */
.ttlBasic {}
.ttlBasic i {
  display: block;
	font-size: 40px;
	line-height: 1.45;
  transform: scaleY(.92);
}
.ttlBasic b {
  font-size: 12px;
  line-height: 1.5;
  letter-spacing: .02rem;
}

.ttlPages {
	display: flex;
	flex-direction: column;
}
.ttlPages sub {
	font-size: 11px;
	margin: 0 0 15px 0;
}
.ttlPages i {
	font-size: 26px;
	line-height: 1.6;
  transform: scaleY(.92);
}
.ttlPages b {
  font-size: 12px;
  line-height: 1.8;
}
.ttlBasic > *,
.ttlPages > * { text-align: left; }

/*
.boldBLK { text-shadow: .3px .3px 0 var(--gray); }
.boldWHT { text-shadow: .3px .3px 0 var(--white); }
*/


/* Graf */
.verGraf .line {
  content: '';
  width: 400px;
  height: 450px;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%,0);
  z-index: 0;
}
.verGraf .line hr {
  background-color: rgba(149,152,155,.75);
  position: absolute;
}
.verGraf .line hr:nth-child(1),
.verGraf .line hr:nth-child(2) {
  width: 1px;
  height: 100%;
  top: 0;
}
.verGraf .line hr:nth-child(1) { left: 0; }
.verGraf .line hr:nth-child(2) { right: 0; }
.verGraf .line hr:nth-child(3),
.verGraf .line hr:nth-child(4) {
  width: 100%;
  height: 1px;
  left: 0;
}
.verGraf .line hr:nth-child(3) { top: 0; }
.verGraf .line hr:nth-child(4) { bottom: 0; }
.verGraf .line hr:nth-child(5) {
  width: 100%;
  height: 100%;
  background-color: rgba(255,255,255,.5);
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}

.verGraf {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  position: relative;
}
.verGraf .block {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.verGraf .verHead {
  width: 400px;
  min-height: 450px;
  position: relative;
}
.verGraf .verHead div {
  display: inline-flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: auto;
  padding: 25px 20px;
  background-color: var(--gray);
  position: absolute;
  z-index: 1;
}
.verGraf .verHead div > * {
  text-align: center;
  color: var(--white);
}
.verGraf .verHead div h3 {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin: 0 0 10px 0;
}
.verGraf .verHead div h3 > * { line-height: 1.9; }
.verGraf .verHead div h3 i {
  font-size: 11px;
  letter-spacing: .05rem;
  margin: 0 0 3px 0;
}
.verGraf .verHead div h3 b {
  text-align: center;
  letter-spacing: .03rem;
  line-height: 1.5;
}
.verGraf .verHead div p {
  font-size: 12px;
  line-height: 1.6;
}
.verGraf .verHead img {
  position: relative;
  z-index: 1;
}

.verGraf.bit01 .verHead h3 {
  font-size: 16px;
  letter-spacing: .08rem;
  margin: 0 0 50px 0;
}
.verGraf.bit01 .verHead p {
  text-align: center;
  position: relative;
}
.verGraf.bit01 .verHead > p + p { margin: 30px 0 0 0; }

.verGraf.bit02 .verHead img { width: 82px; }
.verGraf.bit02 .verHead div { width: 290px; }
.verGraf.bit02 .verHead div:nth-child(1) {
  top: 65px;
  left: -112px;
}
.verGraf.bit02 .verHead div:nth-child(2) {
  top: 65px;
  right: -112px;
}
.verGraf.bit02 .verHead div:nth-child(3) {
  bottom: 65px;
  left: 50%;
  transform: translate(-50%,0);
}
.verGraf.bit02 .verHead div p { letter-spacing: -.02rem; }

.verGraf.bit03 {}
.verGraf.bit03 .verHead { margin: auto; }
.verGraf.bit03 .verHead ul {}
.verGraf.bit03 .verHead ul li {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 325px;
  height: 60px;
  position: relative;
  background-color: var(--gray);
  color: var(--white);
}
.verGraf.bit03 .verHead ul li + li { margin: 26px 0 0 0; }
.verGraf.bit03 .verHead ul li > * {
  display: block;
  font-size: 12px;
  line-height: 1.8;
  letter-spacing: .03rem;
  text-align: center;
}
.verGraf.bit03 .verHead ul li img {
  width: 12px;
  height: 25px;
  position: absolute;
  left: calc(50% - 6px);
  bottom: -28px;
}
.verGraf.bit03 .verHead ul li b sub {
  display: block;
  font-size: 10px;
  text-align: center;
}
.verGraf.bit03 .verHead ul li .return {
  font-size: 11px;
  color: var(--gray);
  position: absolute;
  top: -20px;
  right: -180px;
}
.verGraf.bit03 .verHead ul li .return hr {
  width: 62px;
  height: 55px;
  background-image: url(/images/graf/img02-re-blk.svg);
  background-size: cover;
  background-position: left center;
  position: absolute;
  top: 50%;
  left: -70px;
  transform: translate(0,-47%);
}
.verGraf.bit03 .verHead ul li .stage hr {
  width: 180px;
  height: 12px;
  background-image: url(/images/graf/img02-st-blk.svg);
  background-size: cover;
  background-position: right center;
  position: absolute;
  top: 50%;
  left: -174px;
  transform: translate(0,-47%);
}

.verGraf.bit04 .verHead img { width: 80px; }
.verGraf.bit04 .verHead div { width: 250px; }
.verGraf.bit04 .verHead div:nth-child(1) {
  top: 70px;
  left: -80px;
}
.verGraf.bit04 .verHead div:nth-child(2) {
  top: 70px;
  right: -80px;
}
.verGraf.bit04 .verHead div:nth-child(3) {
  bottom: 60px;
  left: 50%;
  transform: translate(-50%,0);
}
.verGraf.bit04 .verHead div p { letter-spacing: -.02rem; }
.verGraf .verText p { text-align: center; }


/* taxPrice */
.taxPrice {
	display: flex;
	align-items: center;
}
.taxPrice > * { position: relative; }
.taxPrice sub {
	letter-spacing: .05rem;
	top: 2px;
}
.taxPrice sub:after {
	content: '：';
	padding: 0 1px;
}
.taxPrice em {
	font-size: 24px;
	letter-spacing: -.1rem;
}
.taxPrice em:before {
	content: '¥';
  display: inline-flex;
	font-size: 22px;
	padding: 0 2px 0 0;
  transform: scaleX(.9);
}
.taxPrice small {
	padding: 0 0 0 2px;
	font-size: 11px;
	letter-spacing: .03rem;
	top: 4px;
}

/* Boxes */
.boxIntro .text {
  position: relative;
  z-index: 2;
}
.boxIntro .text h2 {
  display: flex;
  flex-direction: column;
  margin: 0 0 40px 0;
}
.boxIntro .text h2 i {
  margin: 0 0 25px 0;
  letter-spacing: .42rem;
}
.boxIntro .text p {}
.boxIntro .text > p + p { margin: 15px 0 0 0; }

.boxSpecial {
  margin: 90px 0 0;
  position: relative;
}
.boxSpecial .title {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 250px;
  position: absolute;
  top: 50%;
  left: 90px;
  transform: translate(0,-50%);
  z-index: 2;
}
.boxSpecial h2 {
  font-size: 40px;
  text-align: center;
  line-height: 1.5;
  transform: scaleY(.92);
  position: relative;
}
.boxSpecial h2:before,
.boxSpecial h2:after {
  content: '';
  width: 37px;
  height: 155px;
  background-color: var(--white-mid);
  position: absolute;
  top: -60px;
  left: -70px;
  z-index: -1;
}
.boxSpecial h2:before { transform: rotate(90deg); }
.boxSpecial h2:after { transform: rotate(0deg); }
.boxSpecial h3 {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 185px;
  height: 185px;
  padding: 0 0 5px 0;
  margin: 10px 0 0 0;
  color: var(--white);
  background-color: var(--gray);
  border-radius: 50%;
}
.boxSpecial h3 sub {
  display: block;
  font-size: 25px;
  letter-spacing: .05rem;
  transform: scaleY(.95);
}
.boxSpecial h3 b { margin: 2px 0 8px; }
.boxSpecial h3 span { width: 40px; }
.boxSpecial .block {
  display: flex;
  align-items: center;
  margin: 0 100px 0 225px;
  background-color: var(--white-tin);
  border-radius: 20px;
  position: relative;
}
.boxSpecial .block div {
  width: 72.5%;
  padding: 50px 100px 50px 195px;
}
.boxSpecial .block h4 {
  margin: 0 0 30px 0;
  font-size: 14px;
  letter-spacing: .05rem;
}
.boxSpecial .block .readmore {
  display: flex;
  align-items: center;
  height: 35px;
  margin: 30px 0 0 0;
  padding: 0;
  font-size: 11px;
}
.boxSpecial .block .readmore:before { bottom: 18px; }
.boxSpecial .block .readmore hr {
  width: calc(100% - 110px);
  bottom: 14px;
}
.boxSpecial .block .readmore:before,
.boxSpecial .block .readmore hr {
  background-color: var(--black);
  right: 0; 
}
.boxSpecial .block .readmore:hover hr { width: calc(100% - 170px); }
.boxSpecial .block picture {
  display: block;
  width: 27.5%;
  border-radius: 0 20px 20px 0;
  overflow: hidden;
}


/* Lists */
/* Course */
.list.verCourse {}
.list.verCourse .block {
  display: flex;
  justify-content: flex-end;
  width: 100%;
  position: relative;
  overflow: hidden; 
}
.list.verCourse > .block + .block { margin: 3px 0 0 0; }
.list.verCourse .block:before,
.list.verCourse .block:after {
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  position: absolute;
  left: 0;
}
.list.verCourse .block:before { top: -1px; }
.list.verCourse .block:after { bottom: -1px; transform: scaleY(-1); }
.list.verCourse .block .box {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 295px;
}
.courseTitle {
  width: 30%;
  text-align: center;
  padding: 0 12px 0 0;
}
.courseTitle > * { white-space: nowrap; }
.courseTitle h2 {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.courseTitle h2 i {
  font-size: 25px;
  line-height: 1.5;
  letter-spacing: .03rem;
  transform: scaleY(.92);
}
.courseTitle h2 i > *,
.courseTitle h2 i > * > * { color: inherit; }
.courseTitle h2 i em { margin: 0 0 0 5px; }
.courseTitle h2 b {
  margin: 25px 0;
  line-height: 1.6;
  letter-spacing: .03rem;
  text-align: center;
}
.courseTitle h3 {
  display: flex;
  justify-content: center;
  align-items: center;
}
.courseTitle h3 span {
  margin: 0 12px;
  position: relative;
}
.courseTitle h3 > span + span:before {
  content: '+';
  position: absolute;
  font-size: 18px;
  line-height: 1;
  top: 50%;
  left: -15px;
  transform: translate(0,-50%);
}
.courseTitle h3 span img { width: 33px; }
.courseDetail {
  width: 70%;
  padding: 5px 90px 0 0;
}
.courseDetail p {}
.courseDetail p small {
  font-size: 11px;
}
.courseDetail ul { margin: 12px 0 5px; }
.courseDetail ul li {
	display: flex;
	width: 100%;
	line-height: 1.8;
}
.courseDetail ul li > * { text-align: left; }
.courseDetail ul li i {
	letter-spacing: .05rem;
	white-space: nowrap;
}
.courseDetail ul li i:after { content: '：'; }
.courseDetail ul li b em { color: inherit; }
.courseDetail ul li b > em + em:before { content: '+'; padding: 0 5px; }
.courseDetail ul li b small {
  font-size: 11px;
  letter-spacing: .03rem;
}
.courseDetail h4 > * { color: inherit; }

/* Prof */
.list.verProf { margin: 40px 0; }
.list.verProf dt {
  padding: 0 0 0 12px;
  margin: 0 0 20px 0;
  position: relative;
}
.list.verProf dt:before {
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 7px 3.5px 0 3.5px;
  border-color: var(--gray) transparent transparent transparent;
  position: absolute;
  top: 10px;
  left: 0;
}
.list.verProf dd p {
  padding: 0 0 0 12px;
  margin: 6px 0;
  line-height: 1.6;
  position: relative;
  white-space: nowrap;
}
.list.verProf dd p:before {
  content: '';
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background-color: var(--gray);
  position: absolute;
  top: 9px;
  left: 2px;
}
.list.verProf dd p sub {
	padding: 0 10px 0 0;
	letter-spacing: .05rem;
}
.list.verProf dd p b { font-size: 12px; }
.list.verProf dd p small { font-size: 11px; }
.list.verProf dd span {
  display: block;
  margin: 12px 0 0 0;
  font-size: 12px;
}

/* News */
.list.verNews ul > li + li { margin: 30px 0 0 0; }
.list.verNews ul li .readmore {
  display: flex;
  width: 100%;
  padding: 0 30px 0 0;
}
.list.verNews ul li .readmore hr { width: calc(100% - 50px); }
.list.verNews ul li .readmore hr,
.list.verNews ul li .readmore:before { right: 30px; }
.list.verNews ul li .readmore:hover hr,
.list.verNews ul li .readmore:hover:before { right: 0; }
.list.verNews ul li time { letter-spacing: .1rem; }
.list.verNews ul li i {
  padding: 0 20px;
  margin: 0 65px 0 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.list.verNews ul li time,
.list.verNews ul li i {
  background-color: var(--gray);
  white-space: nowrap;
  position: relative;
  z-index: 1;
}
.list.verNews ul li time { width: 90px; }

/* FAQ */
.list.verFaq {}
.list.verFaq dl {
	padding: 45px 100px 45px 45px;
	border: 1px solid var(--white);
  border-right: none;
	background-color: var(--gray-tin);
}
.list.verFaq > dl + dl {
	border-top: none;
}
.list.verFaq dl > * {
	position: relative;
}
.list.verFaq dl dt {
	margin: 0 0 12px 0;
}
.list.verFaq dl dt i {
	font-size: 14px;
	letter-spacing: .03rem;
}
.list.verFaq dl dd {
	padding: 0 0 0 30px;
}
.list.verFaq dl dt:before,
.list.verFaq dl dd:before {
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 21px;
	position: absolute;
}
.list.verFaq dl dt:before {
	content: 'Q.';
	width: 40px;
	top: -10px;
	left: -62px;
	z-index: 1;
}
.list.verFaq dl dt:after {
	content: '';
	width: 4px;
	height: 100%;
	background-color: var(--gray-tin);
	position: absolute;
	top: 0;
	left: -47px;
	z-index: 0;
}
.list.verFaq dl dd:before {
	content: 'A.';
	top: -9px;
	left: 0;
}


/* lead */
.lead {
  display: flex;
  margin: 0 0 25px 0;
}
.lead > li + li { margin: 0 0 0 35px; }
.lead li > * {
  display: flex;
  align-items: center;
  padding: 0 0 30px 0;
  font-size: 11px;
  line-height: 1.2;
  position: relative;
}
.lead li > *:before {
  content: '';
  width: 5px;
  height: 5px;
  border-top: 1px solid var(--white);
  border-right: 1px solid var(--white);
  position: absolute;
  bottom: 12px;
  left: 50%;
  transform: translate(-50%,0) rotate(135deg);
  transition: .5s ease-out;
}
.lead li > *:hover:before { bottom: 0; }
.lead li i {
  padding: 2px 12px;
  border: 1px solid var(--white);
  font-size: 10px;
  letter-spacing: .05rem;
  text-align: center;
  white-space: nowrap;
}
.lead li b {}
.lead li b:before {
  content: '=';
  padding: 0 5px;
}
.lead > li.verTrans + li { margin: 0 0 0 25px; }
.lead li.verTrans > i:before { display: none; }


/* Simplepages */
.typeGeneral {}
.typeGeneral .text h2 { margin: 0 0 75px 0; }
.typeGeneral .text h2 i {
  margin: 0 0 20px 0;
  letter-spacing: .15rem;
}
.typeGeneral .text h2 b { letter-spacing: .05rem; }
.typeGeneral .text address {
	display: flex;
	flex-direction: column;
}
.typeGeneral .text address small {
	margin: 0 0 0 5px;
	font-size: 12px;
}
.typeGeneral .boxGeneral .frame { padding: 125px 100px 150px 215px; }
.typeGeneral .boxGeneral .block h2 {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	margin: 0 0 45px 0;
}
.typeGeneral .boxGeneral .block h2 sub {
  margin: 0 0 15px 0;
  padding: 0 20px;
  font-size: 12px;
  line-height: 1.8;
  border: 1px solid var(--white);
}
.typeGeneral .boxGeneral .block h2 i {
	margin: 0 0 5px;
	font-size: 15px;
	letter-spacing: .03rem;
}
.typeGeneral .boxGeneral .block h2 b {
	font-size: 13px;
	letter-spacing: 0;
}
.typeGeneral .boxGeneral .block p { line-height: 2.2; }
.typeGeneral .boxGeneral .block .text { margin: 45px 0 0 0; }
.typeGeneral .boxGeneral .block .text > p + p { margin: 20px 0 0 0; }
.typeGeneral .boxGeneral .block dl.text { margin: 0; }
.typeGeneral .boxGeneral .block .list { margin: 45px 0 0 0; }
.typeGeneral .boxGeneral .block dl {
	border-top: 1px solid rgba(242,245,252,.75);
	padding: 40px 0 50px;
}
.typeGeneral .boxGeneral .block dl dt {
	letter-spacing: .08rem;
	padding: 0 0 20px 15px;
	position: relative;
}
.typeGeneral .boxGeneral .block dl dt:before {
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 6px 4px 0 4px;
	border-color: var(--white) transparent transparent transparent;
	position: absolute;
	top: 10px;
	left: 0;
}
.typeGeneral .boxGeneral .block dl dd {}
.typeGeneral .boxGeneral .block dl small { font-size: 12px; }
.typeGeneral .boxGeneral .block dl dd p {
	display: flex;
	line-height: 1.8;
}
.typeGeneral .boxGeneral .block dl dd p i {
	width: 32px;
	position: relative;
}
.typeGeneral .boxGeneral .block dl dd p i:after {
	content: '';
	width: 8px;
	height: 1px;
	background-color:var(--white);
	position: absolute;
	top: 11px;
	right: 7px;
}
.typeGeneral .boxGeneral .block dl dd p b { width: calc(100% - 30px); }

.typeGeneral .boxGeneral .block dl dd > * { margin: 0 0 5px; }
.typeGeneral .boxGeneral .block dl dd > *:last-child { margin: 0; }
.typeGeneral .boxGeneral .block dl dd ul { margin: 0 0 30px 18px; }
.typeGeneral .boxGeneral .block dl dd ul:last-cihld { margin: 0 0 0 18px; }
.typeGeneral .boxGeneral .block dl dd ul li {
	padding: 0 0 0 15px;
	line-height: 1.6;
	position: relative;
}
.typeGeneral .boxGeneral .block dl dd ul > li + li { margin: 6px 0 0 0; }
.typeGeneral .boxGeneral .block dl dd ul li:before {
	content: '';
	width: 3px;
	height: 3px;
	background-color: var(--white);
	border-radius: 100%;
	position: absolute;
	top: 9px;
	left: 2px;
}
.typeGeneral .boxGeneral .block dl dd ul li.notes { padding: 8px 0 0 0; }
.typeGeneral .boxGeneral .block dl dd ul li.notes:before { display: none; }
.typeGeneral .boxGeneral .block h3 {
	margin: 0 0 20px 0;
	letter-spacing: .08rem;
}
.typeGeneral .boxGeneral .block dl dd time {
	padding: 0 15px 0 0;
	letter-spacing: .05rem;
}
.typeGeneral .boxGeneral div.notes {
	padding: 20px 0 15px 0;
  border-top: 1px solid rgba(242,245,252,.75);
	font-size: 12px;
	letter-spacing: .03rem;
	text-align: right;
}



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

body { font-size: 12px; }

.wrapSlider .box h2 > *,
.wrapSlider .boxWrap h2 > *,
.wrapSlider .boxWrap h2 .iInner{
  text-align: center;
  white-space: nowrap;
}

.ttlBasic i { font-size: 30px; }
.ttlPages sub { margin: 0 0 20px 0; }

.lead > li + li { margin: 0 0 0 25px; }
.lead > li.verTrans + li { margin: 0 0 0 20px; }
.lead li > * {}
.lead li i { padding: 1px 8px; letter-spacing: .05rem; }
.lead li b { margin: 0 0 0 10px; }
.lead li b:before { display: none; }

.linkSquare {
  width: 600px;
  height: 48px;
}
.linkSquare .readmore hr,
.linkSquare .readmore:before { right: 20px; }
.linkSquare .readmore hr { bottom: 21px; }
.linkSquare .readmore:before { bottom: 25px; }
.linkSquare .readmore:hover hr,
.linkSquare .readmore:hover:before { right: 0px; }

.verGraf.bit01 .verHead {
  width: 600px;
  height: 100%;
  padding: 75px 0;
  background-color: var(--white-tin);
  border: 1px solid rgba(0,0,0,.37);
}
.verGraf.bit01 .verHead h3 { margin: 0 0 45px 0; }
.verGraf.bit01 .verHead > p + p { margin: 15px 0 0 0; }

.list.verCourse .block:before,
.list.verCourse .block:after { display: none; }
.list.verCourse .courseTitle {
  width: 37.5%;
  padding: 0;
}
.courseDetail {
  width: 72.5%;
  padding: 5px 75px 0 0;
}
.courseTitle h2 b { margin: 20px 0; }

.list.verFaq dl { padding: 35px 100px 35px 50px; }
.list.verFaq dl dt { margin: 0 0 10px 0; }
.list.verFaq dl dd { line-height: 1.7; }

.typeGeneral .boxGeneral .frame { padding: 125px 100px 156px 165px; }

.boxSpecial {
  max-width: 625px;
  margin: 200px auto 0;
}
.boxSpecial .block {
  flex-direction: column;
  margin: auto;
  border-radius: 15px;
}
.boxSpecial .title {
  flex-direction: row-reverse;
  justify-content: space-between;
  width: 100%;
  top: 0;
  left: 0;
  transform: translate(0,-50%);
}
.boxSpecial h2 { font-size: 35px;  }
.boxSpecial h2:before,
.boxSpecial h2:after {
  width: 32px;
  height: 125px;
  top: -150px;
  left: 0;
}
.boxSpecial .title h2 br { display: none; }
.boxSpecial .block div {
  width: 100%;
  padding: 90px 50px 50px 50px;
}
.boxSpecial .block h4 { text-align: right; }
.boxSpecial .block picture {
  width: 100%;
  height: 375px;
  border-radius: 0 0 15px 15px;
}
.boxSpecial .block picture img {
  height: 100%;
  object-fit: cover;
}
header .humbNav { left: 45px; }
header .arrow { left: 70px; }
header .linkPage {
  top: 135px;
}
header .linkPage ul li {
  width: 135px;
  height: 24px;
  padding: 0 0 2px 0;
}
header .linkPage ul li i { font-size: 10px; }

footer .block.verNav .global { padding: 0 0 0 0; }
footer .block.verNav .global ul { width: 300px; }
footer .block.verNav .link { padding: 0 0 0 40px; }
footer .block.verNav .link dl dt {
  width: 60px;
  margin: 0 20px 0 0;
}
footer .block.verNav .link dl.verTechne dt img { width: 65px; }

}


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


.verWid { display: none !important; }
.verMid { display: block !important; }
.verNar { display: none !important; }

.typeGeneral .boxGeneral .frame { padding: 125px 75px 156px 150px; }

.lead { display: none; }

.verGraf .verHead { width: 100%; }
.verGraf .verHead div p { font-size: 11px; }
.verGraf .verHead div p br { display: none; }

.verGraf.bit01 .verHead { width: 450px; }
.verGraf.bit02 .verHead img { width: 60px; }
.verGraf.bit02 .verHead div { width: 230px; }
.verGraf.bit02 .verHead div:nth-child(1) {
  top: 55px;
  left: calc(50% - 115px);
  transform: translate(-130px,0);
}
.verGraf.bit02 .verHead div:nth-child(2) {
  top: 55px;
  left: calc(50% - 115px);
  right: initial;
  transform: translate(130px,0);
}
.verGraf.bit02 .verHead div:nth-child(3) { bottom: 60px; }

.verGraf.bit03 .verHead ul li { width: 255px; }
.verGraf.bit03 .verHead ul li > * { line-height: 1.6; }
.verGraf.bit03 .verHead ul li .return {
  text-align: left;
  right: -150px;
}

.verGraf.bit04 .verHead img { width: 75px; }
.verGraf.bit04 .verHead div { width: 220px; }
.verGraf.bit04 .verHead div:nth-child(1) {
  top: 75px;
  left: calc(50% - 110px);
  transform: translate(-135px,0);
}
.verGraf.bit04 .verHead div:nth-child(2) {
  top: 75px;
  left: calc(50% - 110px);
  transform: translate(135px,0);
}
.verGraf.bit04 .verHead div:nth-child(3) { bottom: 60px; }
.verGraf.bit04 .verHead div p { letter-spacing: -.02rem; }

.verGraf .verText { padding: 0 145px; }
.verGraf .verText p { text-align: justify; }
.verGraf .verText p br { display: none; }
.verGraf .line { width: 325px; }

.list.verNews ul > li + li { margin: 25px 0 0 0; }
.list.verCourse .courseTitle { width: 100%; }
.list.verFaq dl { border-right: 1px solid var(--white); }
.list.verFaq dl dt {
  margin: 0 0 15px 0;
  padding: 0 0 0 30px;
}
.list.verFaq dl dt:before,
.list.verFaq dl dd:before {
  font-size: 18px;
  top: -6px;
}
.list.verFaq dl dt:before {
  width: initial;
  left: 0;
}

.courseDetail { padding: 0 50px; }
.courseTitle h2 b { margin: 18px 0; }

.overlayNav { width: 100%; }

.wrapSlider .boxWrap h2 b { font-size: 22px; }
.wrapSlider .orgDots li { justify-content: flex-start; }

.ttlBasic i { font-size: 30px; }
.ttlPages i { font-size: 25px; }
.ttlPages sub { margin: 0 0 12px 0; }

.boxIntro .text h2 i { margin: 0 0 18px 0; }
.boxSpecial {
  width: calc(100% - 225px);
  max-width: initial;
  margin: 200px 75px 0 150px;
}
.boxSpecial .title { justify-content: center; }
.boxSpecial h2:before,
.boxSpecial h2:after {
  width: 22px;
  height: 90px;
  left: 50%;
}
.boxSpecial h2:before { transform: translate(-50%,0) rotate(90deg); }
.boxSpecial h2:after { transform: translate(-50%,0) rotate(0deg); }
.boxSpecial h3 {
  width: 175px;
  height: 175px;
  position: absolute;
  top: 65px;
  left: 50%;
  transform: translate(-50%,0);
}
.boxSpecial h3 b { margin: 0 0 8px; }
.boxSpecial .block div { padding: 260px 30px 50px; }
.boxSpecial .block h4 { text-align: center; }

header .humbNav {
  width: 77px;
  top: 45px;
  left: 32px;
}
header h1 {
  margin: 0 0 18px;
  left: 2px;
}
header .humbNav button { width: 38px; }
header .humbNav b {
  letter-spacing: .12rem;
  left: 1px;
}
header .arrow { display: none; }
header .linkPage {
  top: 130px;
  left: 50%;
  transform: translate(-50%,0);
}
header .linkPage ul li { width: 120px; }
header .linkPage ul li i { letter-spacing: 0; }

footer .wrapSlider .box h2 i {}
footer .wrapSlider .box h2 b {}
footer .block {
  width: 100%;
  padding: 0 140px;
}
footer .block.verLogo h2 img { width: 88px; }
footer .block.verNav { flex-direction: column; }
footer .block.verNav > * { width: 100%; }
footer .block.verNav:before,
footer .block.verNav:after { display: none; }
footer .block.verNav .global {
  align-items: center;
  padding: 40px 0 40px 50px;
  border-top: 1px solid rgba(242,245,252,.5);
}
footer .block.verNav .global ul { width: 325px; }
footer .block.verNav .link {
  align-items: center;
  padding: 45px 0 45px 0;
  border-top: 1px solid rgba(242,245,252,.5);
}
footer .block.verNav .link dl {
  flex-direction: column;
  width: 275px;
}
footer .block.verNav .link > dl + dl { margin: 30px 0 0 0; }
footer .block.verNav .link dl dt { margin: 0 0 18px 0; }
footer .block.verNav .link dl dd { width: 97.5%; }
footer .block.verNav .link dl dd .readmore { width: 100%; }
footer .block.verNav .link dl dd > .readmore + .readmore { margin: 5px 0 0 0; }
footer .block.verSNS {
  width: calc(100% - 280px);
  margin: 0 auto;
  padding: 60px 0 25px;
  border-top: 1px solid rgba(242,245,252,.5);
}
footer .copyright { padding: 0 140px 80px; }

}


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


.verWid { display: none !important; }
.verMid { display: block !important; }
.verNar { display: block !important; }

.ttlBasic > * { position: relative; }
.ttlBasic i { font-size: 25px; }
.ttlBasic b {
  font-size: 11px;
  line-height: 1.7;
}
.ttlPages {
  align-items: center;
}
.ttlPages i {
  margin: 0 0 12px 0;
  font-size: 24px;
}
.ttlPages b { font-size: 11px; }
.ttlPages sub { margin: 0 0 10px 0; }

.global ul li a:before { display: none; }
li.opener button:hover:before { transform: rotate(0deg); }
li.opener button:hover:after { transform: rotate(90deg); }

.boxIntro .text h2 i {
  margin: 0 0 15px 0;
  letter-spacing: .3rem;
}
.boxIntro .text p { line-height: 2.2; }

.linkSquare { width: calc(100% - 40px); }

.verGraf .verHead { min-height: 420px; }
.verGraf .verHead div { padding: 18px 20px 20px; }
.verGraf .verHead div h3 i {
  font-size: 9px;
  letter-spacing: .03rem;
}
.verGraf .verHead div h3 b {
  font-size: 11px;
  letter-spacing: .05rem;
}
.verGraf .verHead div p {
  font-size: 10px;
  line-height: 1.7;
  text-align: justify;
}
.verGraf .verHead div p br { display: none !important; }

.verGraf.bit01 .verHead {
  width: calc(100% - 70px);
  padding: 55px 30px;
}
.verGraf.bit01 .verHead h3 { font-size: 14px; }
.verGraf.bit01 .verHead p { text-align: left; }
.verGraf.bit01 .verHead p br { display: none; }

.verGraf.bit02 .verHead img { width: 50px; }
.verGraf.bit02 .verHead div {
  width: 42%;
  min-height: 155px;
}
.verGraf.bit02 .verHead div p { letter-spacing: 0; }
.verGraf.bit02 .verHead div:nth-child(1) {
  top: 40px;
  left: calc(50% - 21%);
  transform: translate(-57.5%,0);
}
.verGraf.bit02 .verHead div:nth-child(2) {
  top: 40px;
  left: calc(50% - 21%);
  transform: translate(57.5%,0);
}
.verGraf.bit02 .verHead div:nth-child(3) { bottom: 40px; }

.verGraf.bit03 .verHead ul {}
.verGraf.bit03 .verHead ul li { width: 165px; }
.verGraf.bit03 .verHead ul li > * {
  font-size: 10px;
  letter-spacing: 0;
  line-height: 1.4;
}
.verGraf.bit03 .verHead ul li b sub {
  margin: 0 0 3px 0;
  font-size: 9px;
}
.verGraf.bit03 .verHead ul li .return {
  padding: 3px 5px;
  font-size: 9px;
  line-height: 1.3;
  text-align: center;
  right: -80px;
  background-color: var(--white-tin);
}
.verGraf.bit03 .verHead ul li .return hr {
  width: 50px;
  height: 45px;
  left: -10px;
  z-index: -1;
}
.verGraf.bit03 .verHead ul li img {
  width: 10px;
  height: 18px;
  bottom: -22px;
}

.verGraf.bit04 .verHead img { width: 50px; }
.verGraf.bit04 .verHead div {
  width: 42%;
  min-height: 130px;
}
.verGraf.bit04 .verHead div:nth-child(1) {
  top: 65px;
  left: calc(50% - 21%);
  transform: translate(-59%,0);
}
.verGraf.bit04 .verHead div:nth-child(2) {
  top: 65px;
  left: calc(50% - 21%);
  transform: translate(59%,0);
}
.verGraf.bit04 .verHead div:nth-child(3) { bottom: 62px; }
.verGraf.bit04 .verHead div p {
  padding: 0 10px;
  letter-spacing: 0;
}

.verGraf .verText { padding: 0 45px; }

.verGraf .verText p { text-align: justify; }
.verGraf .verText p br { display: none; }
.verGraf .line {
  width: calc(100% - 75px);
  height: 400px;
  top: 10px;
}

.list.verCourse .courseTitle h2 i { font-size: 25px; }
.list.verCourse .courseTitle h2 b { margin: 15px 0; }
.courseDetail {
  flex-direction: column;
  padding: 25px 20px 0;
}
.courseDetail > * { width: 100%; }
.courseDetail h4 {
  position: relative;
  top: initial;
  left: initial;
}
.courseDetail ul {  margin: 25px 0 0 0; }
.courseDetail ul li b small { letter-spacing: -.01rem; }
.courseTitle h2 i { font-size: 23px; }
.courseTitle h2 b {
  margin: 18px 0;
  font-size: 12px;
  line-height: 1.8;
  letter-spacing: .08rem;
}

.list.verNews ul li { padding: 25px 0; }
.list.verNews ul > li + li { margin: 0; }
.list.verNews ul li { border-top: 1px solid rgba(242,245,252,.5); }
.list.verNews ul li .readmore {
  flex-direction: column;
  font-size: 12px;
}
.list.verNews ul li .readmore hr,
.list.verNews ul li .readmore:before { right: 0; }
.list.verNews ul li .readmore hr { width: 30px; }
.list.verNews ul li time,
.list.verNews ul li i { background-color: initial; }
.list.verNews ul li time {
  margin: 0 0 5px 0;
  font-size: 11px;
  letter-spacing: .05rem;
}
.list.verNews ul li i {
  padding: 0;
  margin: 0 40px 0 0;
}

.list.verProf { margin: 35px 0; }
.list.verProf dt { margin: 0 0 15px 0; }
.list.verProf dt:before {
  border-width: 6px 3.5px 0 3.5px;
  top: 9px;
}
.list.verProf dd p {
  display: flex;
  flex-direction: column;
  margin: 8px 0;
}
.list.verProf dd span { margin: 15px 0 0 -8px; }
.list.verProf dd p sub { letter-spacing: 0; }
.list.verProf dd p small { font-size: 11px; }

.list.verFaq dl {
  padding: 30px 20px 30px 20px;
  border: 1px solid rgba(242,245,252,.75);
  border-right: 1px solid rgba(242,245,252,.75); 
}
.list.verFaq dl dt { padding: 0; }
.list.verFaq dl dt:before,
.list.verFaq dl dd:before { font-size: 18px; }
.list.verFaq dl dt:before {
  width: initial;
  left: 0;
}
.list.verFaq dl dt i {
  display: inline-flex;
  padding: 0 0 0 25px;
  font-size: 12px;
  line-height: 1.8;
  letter-spacing: 0;
}
.list.verFaq dl dd {
  padding: 0 0 0 25px;
  line-height: 1.9;
}
.list.verFaq dl dd:before { top: -7px; }
.list.verFaq dl dd br { display: none; }

.readmore {
  padding: 0 70px 0 0;
  font-size: 11px;
}
.readmore hr { width: 50px; bottom: 4px; }
.readmore:before { width: 12px; bottom: 7px; }
.readmore:hover:before,
.readmore:hover hr { right: 0; }

.taxPrice sub {
  letter-spacing: .02rem;
  top: 2px;
}
.taxPrice sub:after { padding: 0 1px; }
.taxPrice em {
  font-size: 23px;
  letter-spacing: -.06rem;
}
.taxPrice em:before { font-size: 21px; }
.taxPrice small { letter-spacing: -.01rem; }

.clip { display: none; }

.wrapSlider .boxWrap h2 > * {}
.wrapSlider .boxWrap h2 i { font-size: 10px; letter-spacing: .03rem; }
.wrapSlider .boxWrap h2 b {
  font-size: 14px;
  line-height: 1.7;
  letter-spacing: .05rem;
}
.wrapSlider .orgDots {
  top: initial;
  bottom: 85px;
  left: 0;
  right: initial;
}
.slick-arrow:hover:after { width: 40px; }

.overlayNav section {}
.overlayNav .global { padding: 0 0 0 50px; }
.overlayNav .global ul > li + li { margin: 7px 0 0 0; }
.overlayNav .global > ul + ul { margin: 20px 0 0 0; }
.overlayNav .global ul li p span > * { margin: 3px 0; }
.overlayNav .global .sns { margin: 25px 0 0 0; }
.overlayNav .welcome { margin: 30px 0 0 0; }
.overlayNav h2 img {
  width: 72px;
  margin: 0 0 25px 0;
}

.overlayView .slick-arrow.slick-prev,
.overlayView .slick-arrow.slick-next {
  top: initial;
  bottom: -15px;
}
.overlayView .slick-arrow.slick-prev { left: 30%; }
.overlayView .slick-arrow.slick-next { right: 30%; }
.overlayView { padding: 25px 0 30px; }
.overlayView .box { padding: 0 35px; }
.overlayView .box > * { width: 100%; }
.overlayView h2 {
  padding: 0 0 15px 0;
  font-size: 12px;
}
.overlayView h2 time {
  margin: 0 0 5px 0;
  font-size: 20px;
}
.overlayView h2 i { font-size: 12px; }
.overlayView ul { padding: 15px 0; }
.overlayView ul li { font-size: 12px; }
.overlayView ul li:before { top: 8px; }
.overlayView h3 { padding: 15px 0; }
.overlayView h3 a {
  font-size: 11px;
  line-height: 1.5;
  padding: 30px 0 0 0;
}
.overlayView h3 a:before {
  width: 17px;
  height: 22px;
  top: 0;
  left: 0;
  right: initial;
  transform: initial;
}
.overlayView h3 b { margin: 3px 0 0 0; }
.overlayView .notes p {
  font-size: 11px;
  line-height: 1.8;
}
.overlayView .notes p br { display: none; }
.overlayView.verCurriculum picture { padding: 0 0 25px 0; }
.overlayView.verWear .box > * { width: 100%; }
.overlayView.verWear h2 b { font-size: 11px; }

.typeGeneral .boxGeneral .frame { padding: 145px 30px; }
.typeGeneral .boxGeneral .frame h2 {
  align-items: center;
  margin: 0 0 40px 0;
}
.typeGeneral .boxGeneral .frame h2 i {
  margin: 0 0 12px 0;
  letter-spacing: .08rem;
}
.typeGeneral .boxGeneral .block h2 sub { font-size: 11px; }
.typeGeneral .boxGeneral .block .text {
  padding: 40px 0 0 0;
  border-bottom: 1px solid rgba(242,245,252,.75); 
}
.typeGeneral .boxGeneral .block p br { display: none; }
.typeGeneral .boxGeneral .block .text h2 {
  align-items: flex-start;
  margin: 0 0 30px 0;
}
.typeGeneral .boxGeneral .block .text h2 i {
  margin: 0 0 3px 0;
  font-size: 15px;
  letter-spacing: .03rem;
}
.typeGeneral .boxGeneral .block .text h2 b { font-size: 12px; }
.typeGeneral .boxGeneral .block .list { margin: 0; }
.typeGeneral .boxGeneral .block dl {
  padding: 30px 20px 35px;
  border-left: 1px solid rgba(242,245,252,.75);
  border-right: 1px solid rgba(242,245,252,.75);
}
.typeGeneral .boxGeneral .block dl dt {
  padding: 0 0 20px 12px;
  letter-spacing: .03rem;
}
.typeGeneral .boxGeneral .block dl dt:before {
  border-width: 6px 3.5px 0 3.5px;
  top: 9px;
}
.typeGeneral .boxGeneral .block dl dd > * { margin: 0 0 10px 0; }
.typeGeneral .boxGeneral .block dl dd ul li {
  padding: 0 0 0 12px;
  text-align: left;
  line-height: 1.7;
}
.typeGeneral .boxGeneral .block dl dd ul > li + li { margin: 4px 0 0 0; }
.typeGeneral .boxGeneral .block dl dd > * { word-break: break-word; }
.typeGeneral .boxGeneral .block dl dd p i { width: 25px; }
.typeGeneral .boxGeneral .block dl dd p i:after {
  top: 10px;
  right: 5px;
}
.typeGeneral .boxGeneral .block dl dd p b { width: 100%; }
.typeGeneral .boxGeneral .block dl small { font-size: 11px; }
.typeGeneral .boxGeneral .block .text:first-child { padding: 40px 0; }
.typeGeneral .boxGeneral .block .text { padding: 40px 22px; }
.typeGeneral .boxGeneral .block .text h2 i {
  font-size: 13px;
  letter-spacing: 0;
}
.typeGeneral .boxGeneral .block .text.notes {
  padding: 0;
  text-align: left;
  border-top: none;
}
.typeGeneral .boxGeneral .block .text.notes br { display: none; }
.typeGeneral .boxGeneral div.notes { text-align: center; }

.boxSpecial {
  width: 100%;
  margin: 175px 0 0;
}
.boxSpecial h2 {
  font-size: 28px;
  top: 0;
}
.boxSpecial h2:before,
.boxSpecial h2:after {
  width: 15px;
  height: 65px;
  top: -130px;
  left: 50%;
}
.boxSpecial h3 {
  width: 145px;
  height: 145px;
}
.boxSpecial .block { border-radius: 10px; }
.boxSpecial .block h4 {
  margin: 0 0 30px 0;
  font-size: 13px;
  letter-spacing: 0;
}
.boxSpecial .block div { padding: 230px 20px 50px; }
.boxSpecial .block picture {
  height: 325px;
  border-radius: 0 0 10px 10px;
}

button.close {
  top: 12px;
  left: 30px;
}
button.close b { display: none; }

header .humbNav {
  width: 100%;
  top: 0;
  left: 0;
  position: initial;
}
header .humbNav button {
  width: 38px;
  height: 40px;
  position: fixed;
  top: 45px;
  right: 20px;
  z-index: 10;
}
header .humbNav i > hr + hr { margin: 4px 0 0 0; }
header h1 {
  width: 75px;
  margin: 0;
  position: absolute;
  top: 27px;
  left: 22px;
  z-index: 10;
}
header .humbNav b {
  margin: 3px 0 0 0;
  letter-spacing: .1rem;
}
header .linkPage,
header .arrow { display: none; }

footer .block.verNav .global ul li { line-height: 1.9; }
footer .wrapSlider { height: 245px; }
footer .wrapSlider .box h2 i { font-size: 10px; }
footer .wrapSlider .box h2 sub {
  margin: 0 0 5px 0;
  font-size: 14px;
  letter-spacing: .03rem;
}
footer .block {
   width: 100%;
   margin: auto;
   padding: 0 30px;
}
footer .block.verLogo h2 { margin: 50px 0; }
footer .block.verLogo h2 img { width: 77px; }
footer .block.verNav .global ul li a { transition: initial; }
footer .block.verNav .global ul li a:hover {
  color: var(--white);
  opacity: 1;
}
footer .block.verNav .link dl dt { display: none; }
footer .block.verSNS {
  width: calc(100% - 60px);
  padding: 50px 0 35px
}
footer .copyright {
  padding: 0 60px 80px;
  font-size: 10px;
  letter-spacing: .03rem;
  white-space: nowrap;
}

}
