*,
*:before,
*:after {
	box-sizing: border-box;
}

/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */

/* Document
   ========================================================================== */

html {
	-webkit-text-size-adjust: 100%;
	line-height: 1.15;
}

/* Sections
   ========================================================================== */

body {
	margin: 0;
}

h1 {
	margin: 0.67em 0;
	font-size: 2em;
}

/* Grouping content
   ========================================================================== */

hr {
	box-sizing: content-box;
	height: 0;
	overflow: visible;
}

pre {
	font-family: monospace, monospace;
	font-size: 1em;
}

/* Text-level semantics
   ========================================================================== */

a {
	background-color: transparent;
}

abbr[title] {
	-webkit-text-decoration: underline dotted;
	border-bottom: none;
	text-decoration: underline;
	        text-decoration: underline dotted;
}

b,
strong {
	font-weight: bolder;
}

code,
kbd,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

small {
	font-size: 80%;
}

sub,
sup {
	position: relative;
	font-size: 75%;
	line-height: 0;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

/* Embedded content
   ========================================================================== */

img {
	border-style: none;
}

/* Forms
   ========================================================================== */

button,
input,
optgroup,
select,
textarea {
	margin: 0;
	font-family: inherit;
	font-size: 100%;
	line-height: 1.15;
}

button,
input {
	overflow: visible;
}

button,
select {
	text-transform: none;
}

button,
[type="button"],
[type="reset"],
[type="submit"] {
	-webkit-appearance: button;
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
	padding: 0;
	border-style: none;
}

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
	outline: 1px dotted ButtonText;
}

fieldset {
	padding: 0.35em 0.75em 0.625em;
}

legend {
	box-sizing: border-box;
	display: table;
	max-width: 100%;
	padding: 0;
	color: inherit;
	white-space: normal;
}

progress {
	vertical-align: baseline;
}

textarea {
	overflow: auto;
}

[type="checkbox"],
[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

[type="search"] {
	-webkit-appearance: textfield;
	outline-offset: -2px;
}

[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

::-webkit-file-upload-button {
	-webkit-appearance: button;
	font: inherit;
}

/* Interactive
   ========================================================================== */

details {
	display: block;
}

summary {
	display: list-item;
}

/* Misc
   ========================================================================== */

template {
	display: none;
}

[hidden] {
	display: none;
}

html {
	overflow-x: hidden;
	overflow-y: scroll;
	font-size: 62.5%;
}

body {
	position: relative;
	color: #000;
	font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",メイリオ,Meiryo,"ＭＳ Ｐゴシック",sans-serif;
	font-size: 1.6rem;
	line-height: 2;
	text-align: justify;
	text-justify: inter-ideograph;
	word-break: break-all;
}

a {
	color: #000;
	text-decoration: none;
	opacity: 1.0;
	transition: opacity 0.5s;
}

.pc a:hover {
	opacity: 0.5;
}

a img {
	line-height: 0;
}

img {
	max-width: 100%;
	height: auto;
	vertical-align: top;
}

img.is-pc {
	display: block;
}

img.is-sp {
	display: none;
}

ul,
p,
figure {
	margin: 0;
}

ul {
	padding: 0;
	list-style: none;
}

.l-wrap {
	z-index: 0;
	position: relative;
	width: 100%;
	padding-top: 192px;
	background-color: #FFF;
}

.l-wrap.is-top {
	padding: 0;
}

.is-active .l-wrap.is-top,
.l-wrap.is-top.is-fixed {
	padding-top: 192px;
}

.l-container {
	position: relative;
	width: 100%;
}

.l-contents {
	position: relative;
	width: 100%;
	overflow: hidden;
}

.l-header {
	z-index: 11;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 192px;
	overflow: hidden;
	background-color: #fff;
}

.l-header.is-top {
	position: static;
}

.is-active .l-header.is-top,
.is-fixed .l-header.is-top {
	position: fixed;
}

.l-footer {
	z-index: 3;
	position: relative;
	width: 100%;
	padding-bottom: 20px;
	clear: both;
}

.l-section {
	position: relative;
	width: 100%;
}

.l-anchor {
	display: block;
	z-index: 99;
	position: absolute;
	top: -192px;
	left: 0;
	width: 0;
	height: 0;
	background: red;
}

.l-aside {
	max-width: 1280px;
	margin: 140px auto 135px;
	padding: 0 30px;
	overflow: hidden;
}

.header {
	position: relative;
	width: 100%;
	background: #FFF;
}

.header__body {
	position: relative;
	width: 100%;
	max-width: 1500px;
	height: 192px;
	margin: 0 auto;
}

.header__logo {
	position: absolute;
	top: 50%;
	left: 1.25%;
	width: 29.06%;
	max-width: 436px;
	margin: 0;
	transform: translateY(-50%);
}

.header__logo.is-top {
	left: 3.2%;
	width: 52.26%;
	max-width: 784px;
	margin: 0;
}

.is-fixed .header__logo.is-top {
	left: 1.25%;
	width: 29.06%;
	max-width: 436px;
}

.is-fixed .header__logo {
	left: 1.25%;
	width: 29.06%;
	max-width: 436px;
}

.header__logo a {
	display: block;
	line-height: 1;
}

.header__btn {
	position: absolute;
	top: 50%;
	right: 2.8%;
	width: 46px;
	height: 46px;
	transform: translateY(-50%);
}

.header__list {
	position: absolute;
	top: 50%;
	left: 58.66%;
	padding-right: 100px;
	transform: translateY(-50%);
	font-size: 0;
}

.is-fixed .header__list {
	display: none;
}

.is-fixed.is-active .header__list {
	display: block;
}

.header__list__item {
	display: inline-block;
	font-size: 1.8rem;
}

.header__list__item:first-child {
	margin-right: 18px;
}

.header__nav {
	position: absolute;
	top: 50%;
	left: 33.33%;
	width: 60%;
	transform: translateY(-50%);
}

.header__nav.is-top {
	display: none;
}

.is-fixed .header__nav.is-top {
	display: block;
}

.is-fixed.is-active .header__nav.is-top {
	display: none;
}

.header__nav__list {
	width: 100%;
	font-size: 0;
	text-align: left;
}

.header__nav__list__item {
	display: inline-block;
}

.header__nav__list__item a {
	display: block;
	position: relative;
}

.header__nav__list__item a::after {
	display: none;
	position: absolute;
	right: -5px;
	bottom: 0;
	left: -5px;
	border-bottom: 1px solid #000;
	content: '';
}

.pc .header__nav__list__item a:hover {
	opacity: 1;
}

.pc .header__nav__list__item a:hover::after {
	display: block;
}

.header__nav__list.is-large li {
	margin-right: 5.8%;
	font-size: 2.4rem;
	letter-spacing: 0.25em;
}

.header__nav__list.is-large li:last-child {
	margin: 0;
}

.header__nav__list.is-small li {
	margin-right: 5.1%;
	font-size: 2rem;
	letter-spacing: 0.2em;
}

.header__nav__list.is-small li:last-child {
	margin: 0;
}

.slide {
	position: relative;
	width: 100%;
	height: calc(100vh - 378px);
	background: #FFF;
}

.slide__body {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}

.slide__inner {
	z-index: 0;
	position: relative;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.slide__item {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background-position: 50% 0;
	background-repeat: no-repeat;
	background-size: cover;
	opacity: .0;
	transition: opacity 3s;
}

.slide__item:nth-child(1) {
	background-image: url(../img/slide1.jpg);
}

.slide__item:nth-child(2) {
	background-image: url(../img/slide2.jpg);
}

.slide__item:nth-child(3) {
	background-image: url(../img/slide3.jpg);
}

.slide__item:nth-child(4) {
	background-image: url(../img/slide4.jpg);
}

.slide__item:nth-child(5) {
	background-image: url(../img/slide5.jpg);
}

.slide__item.is-active {
	opacity: 1;
}

.nav {
	position: relative;
	width: 100%;
	padding: 0 15px;
}

.nav.is-black {
	background: #000;
}

.nav.is-white {
	margin-bottom: 29px;
}

.nav__list {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	max-width: 934px;
	margin: 0 auto;
}

.nav__list.is-black a {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 82px;
	margin-right: -0.35em;
	color: #FFF;
	font-size: 2.6rem;
	letter-spacing: 0.35em;
}

.nav__list.is-black li {
	margin-left: 10px;
}

.nav__list.is-black li:first-child {
	margin-left: 0;
}

.nav__list.is-white a {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 75px;
	margin-right: -0.25em;
	font-size: 2.2rem;
	letter-spacing: 0.25em;
}

.nav__list.is-white li {
	margin-left: 10px;
}

.nav__list.is-white li:first-child {
	margin-left: 0;
}

.footer {
	display: flex;
	position: relative;
	align-items: flex-start;
	justify-content: space-between;
	max-width: 1280px;
	margin: 0 auto;
	padding: 0 30px 85px;
}

.footer__item:first-child {
	position: relative;
	width: 32.54%;
	padding: 0 1.5%;
}

.footer__item:first-child::after {
	display: block;
	position: absolute;
	top: 15px;
	right: 0;
	bottom: -15px;
	border-right: 1px solid #000;
	content: '';
}

.footer__item:last-child {
	width: 67.46%;
	padding-left: 6.2%;
}

.footer__logo {
	width: 233px;
	height: 157px;
	margin: 0 auto 40px;
	padding-right: 60px;
}

.footer__summary {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
}

.footer__summary__item {
	font-size: 2.1rem;
	line-height: 1.2;
}

.footer__nav {
	display: flex;
	position: relative;
	align-items: flex-start;
	justify-content: flex-start;
	width: 100%;
	padding-top: 35px;
}

.footer__nav__item {
	width: 41.3%;
	max-width: 305px;
	padding-right: 10px;
}

.footer__nav__btn {
	position: absolute;
	top: 30px;
	right: 143px;
	width: 43px;
}

.footer__nav__btn img {
	width: 43px;
}

.footer__list__item {
	margin-bottom: 30px;
	font-size: 2.1rem;
	line-height: 1.2;
}

.footer__list__item:last-child {
	margin-bottom: 0;
}

.footer__list-sub {
	margin: 10px 0 0 1em;
}

.footer__list-sub__item {
	margin-bottom: 10px;
}

.footer__list-sub__item:last-child {
	margin-bottom: 0;
}

.footer__copyright {
	width: 100%;
	text-align: center;
}

.footer__copyright small {
	font-size: 1.8rem;
}

.footer__btn {
	display: none;
	z-index: 8;
	position: fixed;
	right: 20px;
	bottom: 20px;
	width: 105px;
	height: 94px;
}

.is-fixed .footer__btn {
	display: block;
}

.sp__btn {
	display: none;
	z-index: 11;
	position: absolute;
	top: 50%;
	right: 15px;
	width: 25px;
	height: 14px;
	transform: translateY(-50%);
	line-height: 0;
	cursor: pointer;
}

.sp__btn__body {
	display: block;
	position: relative;
	width: 25px;
	height: 14px;
}

.sp__btn__line {
	position: absolute;
	width: 25px;
	height: 1px;
	background: #CCC;
}

.sp__btn__line:first-child {
	top: 0;
	transition: transform .5s;
}

.is-active .sp__btn__line:first-child {
	width: 26px;
	transform: translate(0px, 6px) rotate(45deg);
}

.sp__btn__line:nth-child(2) {
	top: 50%;
	transform: translateY(-50%);
	opacity: 1;
	transition: opacity .5s;
}

.is-active .sp__btn__line:nth-child(2) {
	opacity: .0;
}

.sp__btn__line:last-child {
	bottom: 0;
	transition: transform .5s;
}

.is-active .sp__btn__line:last-child {
	width: 26px;
	transform: translate(0, -7px) rotate(-45deg);
}

.sp__nav {
	z-index: -2;
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	height: 100%;
	background: rgba(255, 255, 255, 0.9);
	text-align: left;
	opacity: 0;
	transition: z-index .5s, opacity .5s;
}

.is-active .sp__nav {
	z-index: 9;
	opacity: 1;
}

.sp__nav__body {
	-ms-overflow-style: -ms-autohiding-scrollbar;
	-webkit-overflow-scrolling: touch;
	position: relative;
	width: 100%;
	height: 100%;
	padding: 93px 10px 60px;
	overflow-y: auto;
}

.sp__nav__list__item {
	margin-bottom: 23px;
	font-size: 1.2rem;
	line-height: 1;
	text-align: center;
}

.sp__nav__list__item:last-child {
	margin-top: 32px;
}

.sp__nav__list__item:last-child img {
	width: 19px;
}

.ttl {
	margin: 97px 0 0;
	padding: 0 15px;
	line-height: 1;
	text-align: center;
}

.ttl.is-about {
	margin-top: 130px;
}

.ttl.is-school {
	margin-top: 200px;
}

.ttl.is-faq {
	margin-top: 225px;
}

.ttl.is-access {
	margin-top: 192px;
}

.ttl__item {
	display: inline-block;
	position: relative;
	width: 100%;
	max-width: 269px;
	height: 53px;
	overflow: hidden;
	text-align: center;
}

.ttl__item.is-wide {
	max-width: 467px;
	height: 68px;
	margin-bottom: 45px;
}

.ttl img {
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
}

.ttl img.is-about {
	max-width: 263px;
}

.ttl img.is-course {
	max-width: 173px;
}

.ttl img.is-faq {
	max-width: 260px;
}

.ttl img.is-access {
	max-width: 169px;
}

.ttl img.is-course1 {
	max-width: 334px;
}

.ttl img.is-course2 {
	max-width: 121px;
}

.ttl img.is-course3 {
	max-width: 119px;
}

.ttl img.is-course4 {
	max-width: 294px;
}

.ttl img.is-course5 {
	max-width: 250px;
}

.bnr {
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 -4%;
}

.bnr__item {
	width: 33.33%;
	max-width: 440px;
	padding: 0 3.8%;
	font-size: 0;
}

.bnr__item:last-child {
	margin-bottom: 0;
}

.bnr a {
	display: inline-block;
}

.bnr img {
	width: 100%;
	max-width: 340px;
}

.bnr img.is-pc {
	display: block;
}

.bnr img.is-sp {
	display: none;
}

.hero {
	position: relative;
	width: 100%;
	height: 500px;
	background-position: 50%;
	background-repeat: no-repeat;
	background-size: cover;
}

.hero.is-course1 {
	background-image: url(../img/hero_course1.jpg);
}

.hero.is-course2 {
	background-image: url(../img/hero_course2.jpg);
}

.hero.is-course3 {
	background-image: url(../img/hero_course3.jpg);
}

.hero.is-course4 {
	background-image: url(../img/hero_course4.jpg);
}

.hero.is-course5 {
	background-image: url(../img/hero_course5.jpg);
}

.hero__ttl {
	position: absolute;
	left: 50%;
	margin: 0;
	transform: translateX(-50%);
}

.hero__ttl.is-course1 {
	top: 28px;
}

.hero__ttl.is-course2 {
	top: 48px;
}

.hero__ttl.is-course3 {
	top: 39px;
}

.hero__ttl.is-course4 {
	top: 64px;
}

.hero__ttl.is-course5 {
	top: 26px;
}

.hero img.is-course1 {
	width: 60px;
}

.hero img.is-course2 {
	width: 61px;
}

.hero img.is-course3 {
	width: 58px;
}

.hero img.is-course4 {
	max-width: 61px;
}

.hero img.is-course5 {
	max-width: 61px;
}

.read {
	position: relative;
	width: 100%;
	margin-bottom: 90px;
	padding-bottom: 58.67%;
	overflow: hidden;
}

.read::after {
	display: block;
	z-index: 1;
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	width: 100%;
	padding-top: 76%;
	background-image: url(../img/bg_read.jpg);
	background-position: 50% 0;
	background-repeat: no-repeat;
	background-size: cover;
	content: '';
}

.read__body {
	width: 100%;
	margin: 115px auto 0;
}

.read__contents {
	z-index: 2;
	width: 100%;
	max-width: 1280px;
	margin: 0 auto;
	padding: 0 30px;
}

.read__ttl {
	z-index: 5;
	position: relative;
	width: 75.25%;
	margin: 0 0 0 -10px;
}

.read__img {
	z-index: 4;
	position: absolute;
	top: 73px;
	left: 50%;
	width: 780px;
	height: 1485px;
	margin-left: 9.13%;
	overflow: hidden;
	background-image: url(../img/img_read1.png);
	background-position: 0 0;
	background-repeat: no-repeat;
	background-size: 780px auto;
}

.read__img img {
	position: absolute;
	top: 0;
	left: 0;
	vertical-align: top;
}

.read__thumb {
	z-index: 3;
	position: absolute;
	bottom: 5.5%;
	left: 0;
	width: 100%;
}

.read__thumb img {
	width: 100%;
}

.contents__body {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	width: 100%;
	max-width: 1280px;
	margin: 0 auto;
	padding: 0 30px;
}

.news {
	width: 52.459%;
}

.news__body {
	position: relative;
	height: 430px;
}

.news__inner {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.news__list {
	margin: 55px 0;
}

.news__date {
	margin: 0;
	font-size: 1.8rem;
}

.news__txt {
	margin: 0;
	font-size: 2.4rem;
	line-height: 1.5;
}

.news__txt_red {
	color: red;
}

.news__txt p {
	margin-top: 38px;
}

.news__txt p:first-child {
	margin: 0;
}

.youtube {
	width: 47.541%;
	padding-left: 7.93%;
}

.youtube__txt {
	margin-top: 10px;
	font-size: 2rem;
	line-height: 1.6;
}

.youtube__list {
  width: 100%;
  aspect-ratio: 16 / 9;
}
.youtube__list iframe {
  width: 100%;
  height: 100%;
}

.about {
	position: relative;
	width: 100%;
	padding-bottom: 43.67%;
}
/** 追加 2019/08/19**/
.news_bnr{
	max-width: 900px;
	margin: 30px auto 0;
}

.about::after {
	display: block;
	z-index: 1;
	position: absolute;
	top: 113px;
	right: 0;
	left: 0;
	width: 100%;
	padding-top: 47%;
	background-image: url(../img/bg_about.jpg);
	background-position: 50% 0;
	background-repeat: no-repeat;
	background-size: cover;
	content: '';
}

.about__body {
	display: flex;
	z-index: 2;
	position: relative;
	align-items: flex-start;
	justify-content: space-between;
	width: 100%;
	max-width: 1280px;
	margin: 60px auto 0;
	padding: 75px 30px 0;
}

.about__logo {
	width: 27.7%;
	padding: 0 20px 0 0;
}

.about__logo img {
	width: 100%;
	max-width: 280px;
}

.about__txt {
	width: 72.3%;
}

.about__img {
	z-index: 3;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
}

.about__img img {
	width: 100%;
}

.teacher__body {
	max-width: 1280px;
	margin: 0 auto;
	padding: 0 30px;
}

.teacher__ttl {
	width: 214px;
	margin: -10% 0 -5px;
	padding-left: 10px;
}

.teacher__name {
	margin: 53px 0 22px;
	font-size: 3rem;
	font-weight: 400;
	line-height: 1.6;
}

.teacher__txt {
	font-size: 2.4rem;
	line-height: 2.08;
}

.teacher__txt.is-font-large {
	margin-top: 50px;
	font-size: 3rem;
}

.school__body {
	max-width: 1280px;
	margin: 50px auto 0;
	padding: 0 30px;
}

.school__ttl {
	margin: 95px 0 22px;
	font-size: 3rem;
	font-weight: 400;
	letter-spacing: 0.1em;
}

.school__ttl .is-sp {
	display: none;
}

.school__txt {
	font-size: 2.4rem;
	line-height: 2.25;
}

p + .school__txt {
	margin-top: 53px;
}

.school__txt.is-align-right {
	margin-top: 10px;
	font-size: 2rem;
	letter-spacing: 0.05em;
	text-align: right;
}

.school__table {
	position: relative;
	width: 100%;
	border-collapse: collapse;
}

.school__table::before,
.school__table::after {
	display: block;
	position: absolute;
	right: 0;
	left: 0;
	border-top: 1px solid #000;
	content: '';
}

.school__table::before {
	top: 0;
}

.school__table::after {
	bottom: 0;
}

.school__table th,
.school__table td {
	height: 90px;
	padding: 10px;
	letter-spacing: 0.075em;
	line-height: 1.5em;
	text-align: center;
}

.school__table th {
	border-right: 1px solid #FFF;
	background-color: #ededed;
	font-size: 2.4rem;
	font-weight: 400;
}

.school__table th:last-child {
	border-right: none;
}

.school__table th.col2 {
	width: 50%;
}

.school__table th.col3 {
	width: 33.33%;
}

.school__table th.col4 {
	width: 25%;
}

.school__table th .is-font-small {
	font-size: 1.2rem;
}

.school__table td {
	border-right: 1px solid #999;
	border-bottom: 1px solid #999;
	font-size: 2.4rem;
}

.school__table td:last-child {
	border-right: none;
}

.school__table td.is-height {
	height: 155px;
}

.school__table td.is-align-left {
	padding: 12px 0 12px 25px;
	line-height: 2.2;
	text-align: left;
}

.school__table.is-pc {
	display: table;
}

.school__table.is-sp {
	display: none;
}

.school__thumb {
	width: 100%;
	margin: 105px auto 80px;
	font-size: 0;
}

.school__thumb__item {
	display: inline-block;
	width: 50%;
	margin-bottom: 55px;
}

.school__thumb__item:nth-child(odd) {
	padding-right: 4.098%;
}

.school__thumb__item:nth-child(even) {
	padding-left: 4.098%;
}

.school__thumb__item:last-child {
	margin-bottom: 0;
}

.school__thumb__txt {
	display: inline-block;
	position: relative;
	margin-top: 25px;
	padding-right: .5em;
	font-size: 2.4rem;
	letter-spacing: 0.15em;
	line-height: 1.2;
}

.school__thumb__txt::after {
	display: block;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	font-size: 1.2rem;
	content: '>';
}

.flex {
	display: flex;
	justify-content: center;
	text-align: left;
}

.address__body {
	width: 100%;
	padding: 20px 25px;
	border-top: 1px solid #000;
	border-bottom: 1px solid #000;
}

.address__table {
	position: relative;
	width: 100%;
	border-collapse: collapse;
}

.address__table th,
.address__table td {
	padding: 12px 5px;
	font-size: 2.4rem;
	font-weight: 400;
	letter-spacing: 0.05em;
	line-height: 1.2;
	text-align: left;
}

.address__table th {
	width: calc(100% - 760px);
}

.address__table td {
	width: calc(100% - 600px);
}

.address__table.is-pc {
	display: table;
}

.address__table.is-sp {
	display: none;
}

.faq__body {
	max-width: 1280px;
	margin: 100px auto 0;
	padding: 0 30px;
}

.faq__list {
	position: relative;
	margin: 0 auto 40px;
}

.faq__list::after {
	display: block;
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	border-bottom: 1px solid #000;
	content: '';
}

.faq__list__ttl {
	position: relative;
	width: 100%;
	margin: 0;
	padding: 30px 90px 30px 0;
	font-size: 2.4rem;
	letter-spacing: 0.05em;
	line-height: 1.5;
	cursor: pointer;
}

.faq__list__ttl::after {
	display: block;
	position: absolute;
	top: 50%;
	right: 23px;
	width: 57px;
	height: 57px;
	transform: translateY(-50%);
	border: 1px solid #000;
	background-image: url(../img/ico_open.png);
	background-position: 50%;
	background-repeat: no-repeat;
	background-size: 27px 27px;
	content: '';
}

.faq__list__ttl.is-active::after {
	background-image: url(../img/ico_close.png);
	background-size: 15px auto;
}

.faq__list__ttl .is-block-sp {
	display: none;
}

.faq__list__txt {
	width: 100%;
	margin: 0;
	padding: 55px 45px;
	background-color: #ededed;
	font-size: 2.4rem;
	letter-spacing: 0.035em;
}

.access__body {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	width: 100%;
	max-width: 1280px;
	margin: 120px auto 0;
	padding: 0 30px;
}

.info {
	width: 45.08%;
	padding-right: 2.87%;
}

.info__ttl {
	margin: -.5em 0 0;
	padding-left: 8.5%;
	font-size: 3rem;
	font-weight: 400;
}

.info__list {
	margin: 20px 0;
	padding-left: 8.5%;
}

.info__list__item {
	font-size: 1.8rem;
}

.map {
	width: 54.92%;
}

.map__body {
	position: relative;
	width: 100%;
	height: 0;
	padding-bottom: 102.99%;
	overflow: hidden;
}

.map__body iframe {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.map__btn {
	margin-top: 10px;
	font-size: 0;
	text-align: right;
}

.map__btn a {
	display: inline-block;
}

.map__btn a img {
	width: 96px;
}

.course__body {
	max-width: 1280px;
	margin: 0 auto 200px;
	padding: 0 30px;
}

.course__txt {
	font-size: 2.4rem;
	line-height: 2.25;
}

p + .course__txt {
	margin-top: 50px;
}

.course__box {
	margin: 45px 0;
	background-color: #ededed;
}

.course__box__inner {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 100%;
	padding: 30px 15px 40px;
}

.course__box__thumb {
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
	width: 100%;
	padding: 33px 30px;
}

.course__box__img {
	width: 50%;
	padding-right: 4%;
}

.course__box__txt {
	width: 50%;
	margin-top: -0.5em;
	font-size: 2.4rem;
	letter-spacing: -0.03em;
	line-height: 1.91;
}

.course__list__item {
	font-size: 2.4rem;
	line-height: 2.25;
}

.course__thumb {
	width: 100%;
	margin: 65px 0 0;
	font-size: 0;
}

.course__thumb__item {
	display: inline-block;
	width: 50%;
}

.course__thumb__item:nth-child(odd) {
	padding-right: 4.098%;
}

.course__thumb__item:nth-child(even) {
	padding-left: 4.098%;
}

.course__thumb__item.is-wide {
	width: 100%;
	margin-bottom: 15px;
	padding: 0;
}

/*　malihu jquery custom scrollbar plugin Plugin URI: http://manos.malihu.gr/jquery-custom-content-scroller */

.mCustomScrollbar {
	touch-action: pinch-zoom;
}

.mCustomScrollbar.mCS_no_scrollbar,
.mCustomScrollbar.mCS_touch_action {
	touch-action: auto;
}

.mCustomScrollBox {
	position: relative;
	max-width: 100%;
	height: 100%;
	overflow: hidden;
	outline: none;
	direction: ltr;
}

.mCSB_container {
	width: auto;
	height: auto;
	overflow: hidden;
}

.mCSB_inside > .mCSB_container {
	margin-right: 30px;
}

.mCSB_container.mCS_no_scrollbar_y.mCS_y_hidden {
	margin-right: 0;
}

.mCS-dir-rtl > .mCSB_inside > .mCSB_container {
	margin-right: 0;
	margin-left: 30px;
}

.mCS-dir-rtl > .mCSB_inside > .mCSB_container.mCS_no_scrollbar_y.mCS_y_hidden {
	margin-left: 0;
}

.mCSB_scrollTools {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: auto;
	width: 16px;
	height: auto;
}

.mCSB_outside + .mCSB_scrollTools {
	right: -26px;
}

.mCS-dir-rtl > .mCSB_inside > .mCSB_scrollTools,
.mCS-dir-rtl > .mCSB_outside + .mCSB_scrollTools {
	right: auto;
	left: 0;
}

.mCS-dir-rtl > .mCSB_outside + .mCSB_scrollTools {
	left: -26px;
}

.mCSB_scrollTools .mCSB_draggerContainer {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	height: auto;
}

.mCSB_scrollTools a + .mCSB_draggerContainer {
	margin: 20px 0;
}

.mCSB_scrollTools .mCSB_draggerRail {
	width: 2px;
	height: 100%;
	margin: 0 auto;
	border-radius: 16px;
}

.mCSB_scrollTools .mCSB_dragger {
	z-index: 1;
	width: 100%;
	height: 30px;
	cursor: pointer;
}

.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
	position: relative;
	width: 4px;
	height: 100%;
	margin: 0 auto;
	border-radius: 16px;
	text-align: center;
}

.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded .mCSB_dragger_bar,
.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_dragger .mCSB_dragger_bar {
	width: 12px;
}

.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded + .mCSB_draggerRail,
.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail {
	width: 8px;
}

.mCSB_scrollTools .mCSB_buttonUp,
.mCSB_scrollTools .mCSB_buttonDown {
	display: block;
	position: absolute;
	width: 100%;
	height: 20px;
	margin: 0 auto;
	overflow: hidden;
	cursor: pointer;
}

.mCSB_scrollTools .mCSB_buttonDown {
	bottom: 0;
}

.mCSB_horizontal.mCSB_inside > .mCSB_container {
	margin-right: 0;
	margin-bottom: 30px;
}

.mCSB_horizontal.mCSB_outside > .mCSB_container {
	min-height: 100%;
}

.mCSB_horizontal > .mCSB_container.mCS_no_scrollbar_x.mCS_x_hidden {
	margin-bottom: 0;
}

.mCSB_scrollTools.mCSB_scrollTools_horizontal {
	top: auto;
	right: 0;
	bottom: 0;
	left: 0;
	width: auto;
	height: 16px;
}

.mCustomScrollBox + .mCSB_scrollTools.mCSB_scrollTools_horizontal,
.mCustomScrollBox + .mCSB_scrollTools + .mCSB_scrollTools.mCSB_scrollTools_horizontal {
	bottom: -26px;
}

.mCSB_scrollTools.mCSB_scrollTools_horizontal a + .mCSB_draggerContainer {
	margin: 0 20px;
}

.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_draggerRail {
	width: 100%;
	height: 2px;
	margin: 7px 0;
}

.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_dragger {
	left: 0;
	width: 30px;
	height: 100%;
}

.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar {
	width: 100%;
	height: 4px;
	margin: 6px auto;
}

.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded .mCSB_dragger_bar,
.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_dragger .mCSB_dragger_bar {
	height: 12px;
	margin: 2px auto;
}

.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded + .mCSB_draggerRail,
.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail {
	height: 8px;
	margin: 4px 0;
}

.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_buttonLeft,
.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_buttonRight {
	display: block;
	position: absolute;
	width: 20px;
	height: 100%;
	margin: 0 auto;
	overflow: hidden;
	cursor: pointer;
}

.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_buttonLeft {
	left: 0;
}

.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_buttonRight {
	right: 0;
}

.mCSB_scrollTools {
	width: 11px;
}

._mCS_1 .mCSB_dragger,
._mCS_1 .mCSB_dragger .mCSB_dragger_bar {
	width: 11px;
	height: 11px;
	border-radius: 0;
	background: #000;
	opacity: 1 !important;
}

.mCS-rounded-dots.mCSB_scrollTools .mCSB_dragger {
	width: 11px;
	height: 11px;
}

.mCSB_scrollTools {
	opacity: 1 !important;
}

.mCS-autoHide > .mCustomScrollBox > .mCSB_scrollTools,
.mCS-autoHide > .mCustomScrollBox ~ .mCSB_scrollTools {
	opacity: 1 !important;
}

.mCS-autoHide:hover > .mCustomScrollBox > .mCSB_scrollTools,
.mCS-autoHide:hover > .mCustomScrollBox ~ .mCSB_scrollTools,
.mCustomScrollBox:hover > .mCSB_scrollTools,
.mCustomScrollBox:hover ~ .mCSB_scrollTools,
.mCustomScrollbar > .mCustomScrollBox > .mCSB_scrollTools.mCSB_scrollTools_onDrag,
.mCustomScrollbar > .mCustomScrollBox ~ .mCSB_scrollTools.mCSB_scrollTools_onDrag {
	opacity: 1 !important;
}

.mCSB_dragger_onDrag {
	background: #000 !important;
	opacity: 1 !important;
}

.mCSB_dragger {
	height: 11px;
}

.mCSB_dragger:hover .mCSB_dragger_bar {
	background: #000 !important;
	opacity: 1.0 !important;
}

.mCS-rounded-dots.mCSB_scrollTools .mCSB_draggerRail {
	width: 1px;
	background: #000;
}

.js-inview .js-hero {
	opacity: 0;
	transition: opacity 1s;
}

.js-inview .js-ttl {
	top: 20px;
	opacity: 0;
	transition: opacity 1s, top 1s;
	transition-delay: .4s;
}

.js-inview .js-ttl-delay {
	top: 20px;
	opacity: 0;
	transition: opacity 1s, top 1s;
	transition-delay: 1s;
}

.js-inview .js-border::after {
	display: block;
	position: absolute;
	right: 50%;
	bottom: 1px;
	left: 50%;
	border-bottom: 1px solid #000;
	content: '';
	transition: left 1.5s, right 1.5s;
}

.js-inview .js-border-delay::after {
	display: block;
	position: absolute;
	right: 50%;
	bottom: 1px;
	left: 50%;
	border-top: 1px solid #000;
	content: '';
	transition: left 1.5s, right 1.5s;
	transition-delay: 1s;
}

.js-inview .js-hero-ttl {
	transform: translate(-50%, -20px);
	opacity: 0;
	transition: opacity 1s, transform 1s;
	transition-delay: .4s;
}

.js-inview .js-fadeIn {
	transform: translateY(20px);
	opacity: 0;
	transition: opacity 1s, transform 1s;
	transition-delay: .4s;
}

.js-inview .js-fadeIn-slide {
	opacity: 0;
	transition: opacity .6s;
	transition-delay: .4s;
}

.js-inview .js-fadeIn-delay {
	transform: translateY(20px);
	opacity: 0;
	transition: opacity 1s, transform 1s;
	transition-delay: 1.8s;
}

.js-inview .js-slideInLeft {
	transform: scale(0, 0);
	transform-origin: left top;
	transition: transform .4s;
	transition-delay: .8s;
}

.is-loaded .js-inview.is-inview .js-hero {
	opacity: 1;
}

.is-loaded .js-inview.is-inview .js-ttl {
	top: 0;
	opacity: 1;
}

.is-loaded .js-inview.is-inview .js-ttl-delay {
	top: 0;
	opacity: 1;
}

.is-loaded .js-inview.is-inview .js-border::after {
	right: 0;
	left: 0;
}

.is-loaded .js-inview.is-inview .js-border-delay::after {
	right: 0;
	left: 0;
}

.is-loaded .js-inview.is-inview .js-fadeIn {
	transform: translateY(0);
	opacity: 1;
}

.is-loaded .js-inview.is-inview .js-fadeIn-slide {
	opacity: 1;
}

.is-loaded .js-inview.is-inview .js-fadeIn-delay {
	transform: translateY(0);
	opacity: 1;
}

.is-loaded .js-inview.is-inview .js-hero-ttl {
	transform: translate(-50%, 0);
	opacity: 1;
}

.is-loaded .js-inview.is-inview .js-hero-ttl-delay {
	transform: translate(-50%, 0);
	opacity: 1;
}

.is-loaded .js-inview.is-inview .js-slideInLeft {
	transform: scale(1, 1);
}

@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {

html {
	-webkit-font-smoothing: antialiased;
}

body {
	-webkit-font-smoothing: subpixel-antialiased;
	-moz-osx-font-smoothing: grayscale;
}

}

@media (max-width: 1500px) and (min-width: 751px) {

.l-wrap {
	padding-top: 12.8%;
}

.is-active .l-wrap.is-top,
.l-wrap.is-top.is-fixed {
	padding-top: 12.8%;
}

.l-header {
	height: auto;
}

.l-anchor {
	top: -18vw;
}

.l-anchor.is-course {
	top: -12.8vw;
}

.l-aside {
	margin: 9.33% auto 9%;
}

.header__body {
	height: auto;
	padding-top: 12.8%;
}

.header__list__item {
	font-size: 1.2vw;
}

.header__nav__list.is-large li {
	font-size: 1.6vw;
}

.header__nav__list.is-small li {
	font-size: 1.33vw;
}

.slide {
	height: 0;
	margin-bottom: -186px;
	padding-top: calc(100vh - 12.8%);
}

.slide__body {
	bottom: 186px;
}

.nav__list.is-black a {
	font-size: 2vw;
}

.nav__list.is-white a {
	font-size: 1.7vw;
}

.footer__summary__item {
	font-size: 1.4vw;
}

.footer__list__item {
	font-size: 1.4vw;
}

.footer__copyright small {
	font-size: 1.2vw;
}

.ttl {
	margin-top: 8%;
}

.ttl.is-about {
	margin-top: 8.67%;
}

.ttl.is-school {
	margin-top: 13.33%;
}

.ttl.is-faq {
	margin-top: 15%;
}

.ttl.is-access {
	margin-top: 12.8%;
}

.ttl__item {
	width: 22.05%;
	height: 0;
	padding-top: 3.6%;
}

.ttl__item.is-wide {
	width: 38.28%;
	height: 0;
	margin-bottom: 3.69%;
	padding-top: 5.573%;
}

.ttl img.is-about {
	max-width: 97.77%;
}

.ttl img.is-course {
	max-width: 64.31%;
}

.ttl img.is-faq {
	max-width: 96.65%;
}

.ttl img.is-access {
	max-width: 62.83%;
}

.ttl img.is-course1 {
	max-width: 71.52%;
}

.ttl img.is-course2 {
	max-width: 25.91%;
}

.ttl img.is-course3 {
	max-width: 25.48%;
}

.ttl img.is-course4 {
	max-width: 62.96%;
}

.ttl img.is-course5 {
	max-width: 53.53%;
}

.read {
	margin-bottom: 6%;
}

.read__body {
	margin-top: 7.67%;
}

.read__img {
	top: 5.2%;
	right: 0;
	left: auto;
	width: 40.8%;
	margin-left: 0;
	background-size: 127% auto;
}

.news__body {
	height: 0;
	padding-top: 69.84%;
}

.news__date {
	font-size: 1.2vw;
}

.news__txt {
	font-size: 1.6vw;
}

.youtube__txt {
	font-size: 1.33vw;
}

.about::after {
	top: 8.6%;
}

.about__body {
	margin-top: 4.689%;
	padding-top: 4%;
}

.teacher__ttl {
	width: 16.72%;
	margin: -9% 0 0;
}

.teacher__name {
	font-size: 2vw;
}

.teacher__txt {
	font-size: 1.6vw;
}

.teacher__txt.is-font-large {
	font-size: 2vw;
}

.school__body {
	margin-top: 3.5%;
}

.school__ttl {
	font-size: 2vw;
}

.school__txt {
	font-size: 1.6vw;
}

.school__txt.is-align-right {
	font-size: 1.33vw;
}

.school__table th,
.school__table td {
	height: auto;
	padding: 25px 10px;
}

.school__table th {
	font-size: 1.6vw;
}

.school__table td {
	font-size: 1.6vw;
}

.school__table td.is-height {
	height: auto;
}

.school__thumb__txt {
	font-size: 1.6vw;
}

.school__thumb__txt::after {
	font-size: .08vw;
}

.address__table th,
.address__table td {
	font-size: 1.6vw;
}

.faq__body {
	margin-top: 7.8%;
}

.faq__list__ttl {
	font-size: 1.6vw;
}

.faq__list__txt {
	font-size: 1.6vw;
}

.access__body {
	margin-top: 8%;
}

.info__ttl {
	font-size: 2vw;
}

.info__list__item {
	font-size: 1.2vw;
}

.course__body {
	margin-bottom: 13.33%;
}

.course__txt {
	font-size: 1.6vw;
}

.course__box__txt {
	font-size: 1.6vw;
}

.course__list__item {
	font-size: 1.6vw;
}

.course__thumb__item.is-wide {
	margin-bottom: 0;
}

}

@media (min-width: 1500px) {

.read::after {
	height: 1140px;
	padding: 0;
}

}

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

.school__thumb {
	margin: 42px 0 -20px;
}

.mCSB_inside > .mCSB_container {
	margin-right: 10px;
}

.mCSB_scrollTools {
	width: 6px;
}

._mCS_1 .mCSB_dragger,
._mCS_1 .mCSB_dragger .mCSB_dragger_bar {
	width: 6px;
	height: 6px;
}

.mCS-rounded-dots.mCSB_scrollTools .mCSB_dragger {
	width: 6px;
	height: 6px !important;
	min-height: 6px !important;
}

.mCSB_dragger {
	height: 6px;
}

}

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

img.is-pc {
	display: none;
}

img.is-sp {
	display: block;
}

.l-wrap {
	padding-top: 50px;
}

.is-active .l-wrap.is-top,
.l-wrap.is-top.is-fixed {
	padding-top: 50px;
}

.l-header {
	height: 50px;
}

.l-anchor {
	top: -50px;
}

.l-aside {
	margin: 50px auto 68px;
}

.header__body {
	height: 50px;
}

.header__logo {
	left: 15px;
	width: 186px;
	max-width: 186px;
	height: 28px;
}

.header__logo.is-top {
	left: 15px;
	width: 186px;
	max-width: 186px;
	height: 28px;
}

.is-fixed .header__logo.is-top {
	left: 15px;
	width: 186px;
	max-width: 186px;
	height: 28px;
}

.is-fixed .header__logo {
	left: 15px;
	width: 186px;
	max-width: 186px;
	height: 28px;
}

.header__btn {
	display: none;
}

.header__list {
	display: none;
}

.is-fixed.is-active .header__list {
	display: none;
}

.header__nav {
	display: none;
}

.is-fixed .header__nav.is-top {
	display: none;
}

.slide {
	height: calc(100vh - 50px);
}

.slide__item:nth-child(1) {
	background-image: url(../img/slide1_sp.jpg);
}

.slide__item:nth-child(2) {
	background-image: url(../img/slide2_sp.jpg);
}

.slide__item:nth-child(3) {
	background-image: url(../img/slide3_sp.jpg);
}

.slide__item:nth-child(4) {
	background-image: url(../img/slide4_sp.jpg);
}

.slide__item:nth-child(5) {
	background-image: url(../img/slide5_sp.jpg);
}

.nav {
	display: none;
}

.footer {
	display: block;
	padding-bottom: 35px;
}

.footer__item:first-child {
	width: 100%;
	padding: 0;
}

.footer__item:first-child::after {
	display: none;
}

.footer__item:last-child {
	display: none;
}

.footer__logo {
	width: 87px;
	height: auto;
	margin: 0 auto 25px;
	padding: 0;
}

.footer__summary {
	display: block;
	text-align: center;
}

.footer__summary__item {
	font-size: 1.2rem;
	line-height: 1.5;
}

.footer__copyright small {
	font-size: .9rem;
}

.footer__btn {
	right: 10px;
	bottom: 10px;
	width: 53px;
	height: 47px;
}

.sp__btn {
	display: block;
}

.ttl {
	margin-top: 68px;
}

.ttl.is-about {
	margin-top: 68px;
}

.ttl.is-school {
	margin-top: 48px;
}

.ttl.is-faq {
	margin-top: 83px;
}

.ttl.is-access {
	margin-top: 68px;
}

.ttl__item {
	max-width: 135px;
	height: 28px;
}

.ttl__item.is-wide {
	max-width: 233px;
	height: 35px;
	margin-bottom: 22px;
}

.ttl img.is-about {
	max-width: 132px;
}

.ttl img.is-course {
	max-width: 87px;
}

.ttl img.is-faq {
	max-width: 130px;
}

.ttl img.is-access {
	max-width: 85px;
}

.ttl img.is-course1 {
	max-width: 167px;
}

.ttl img.is-course2 {
	max-width: 60px;
}

.ttl img.is-course3 {
	max-width: 60px;
}

.ttl img.is-course4 {
	max-width: 147px;
}

.ttl img.is-course5 {
	max-width: 125px;
}

.bnr {
	display: block;
	width: 100%;
	margin: 0 auto;
}

.bnr__item {
	width: 100%;
	max-width: 630px;
	margin: 0 auto 20px;
	padding: 0;
}

.bnr img {
	max-width: 630px;
}

.bnr img.is-pc {
	display: none;
}

.bnr img.is-sp {
	display: block;
}

.hero {
	height: 150px;
}

.hero.is-course1 {
	background-image: url(../img/hero_course1_sp.jpg);
}

.hero.is-course2 {
	background-image: url(../img/hero_course2_sp.jpg);
}

.hero.is-course3 {
	background-image: url(../img/hero_course3_sp.jpg);
}

.hero.is-course4 {
	background-image: url(../img/hero_course4_sp.jpg);
}

.hero.is-course5 {
	background-image: url(../img/hero_course5_sp.jpg);
}

.hero__ttl.is-course1 {
	top: 3px;
}

.hero__ttl.is-course2 {
	top: 17px;
}

.hero__ttl.is-course3 {
	top: 11px;
}

.hero__ttl.is-course4 {
	top: 4px;
}

.hero__ttl.is-course5 {
	top: 7px;
}

.hero img.is-course1 {
	width: 21px;
}

.hero img.is-course2 {
	width: 21px;
}

.hero img.is-course3 {
	width: 21px;
}

.hero img.is-course4 {
	width: 21px;
}

.hero img.is-course5 {
	width: 21px;
}

.read {
	margin-bottom: 16px;
	padding-bottom: 54.5%;
}

.read::after {
	padding-top: 150%;
	background-image: url(../img/bg_read_sp.jpg);
}

.read__body {
	margin-top: 8.6%;
}

.read__ttl {
	width: 91.8%;
	margin-left: -7%;
	padding-left: 3%;
}

.read__img {
	top: 9.6%;
	width: 52.5%;
	background-size: 100% auto;
}

.read__thumb {
	bottom: 0;
}

.contents__body {
	display: block;
}

.news {
	width: 100%;
	margin-bottom: 25px;
}

.news__body {
	height: 165px;
	margin-right: -3px;
}

.news__list {
	margin: 20px 0;
}

.news__date {
	font-size: .9rem;
}

.news__txt {
	font-size: 1.2rem;
}

.news__txt p {
	margin-top: 23px;
}

.youtube {
	width: 100%;
	padding-left: 0;
}

.youtube__txt {
	margin-top: 7px;
	font-size: 1.2rem;
}

.about {
	padding-bottom: 48%;
}

.about::after {
	top: 60px;
	padding-top: 133.4%;
	background-image: url(../img/bg_about_sp.jpg);
}

.about__body {
	display: block;
	margin-top: 30px;
	padding-top: 15px;
}

.about__logo {
	width: 100%;
	max-width: 92px;
	margin: 0 auto 18px;
	padding: 0;
}

.about__txt {
	width: auto;
	margin: 0 -1.75%;
}

.teacher__ttl {
	width: 107px;
	margin: -58px 0 -5px -12px;
	padding: 0;
}

.teacher__name {
	margin: 25px 0 10px;
	font-size: 1.5rem;
}

.teacher__txt {
	font-size: 1.2rem;
	line-height: 2.1;
}

.teacher__txt.is-font-large {
	margin-top: 25px;
	font-size: 1.5rem;
}

.school__body {
	margin-top: 20px;
}

.school__ttl {
	margin: 55px 0 11px;
	font-size: 1.5rem;
	line-height: 1.2;
}

.school__ttl:nth-of-type(1) {
	margin-top: 45px;
}

.school__ttl .is-sp {
	display: block;
}

.school__txt {
	font-size: 1.2rem;
	line-height: 2.3;
}

p + .school__txt {
	margin-top: 2.3em;
}

.school__txt.is-align-right {
	margin-top: 3px;
	font-size: 1.2rem;
}

.school__table th,
.school__table td {
	height: 50px;
}

.school__table th {
	font-size: 1.5rem;
}

.school__table td {
	font-size: 1.2rem;
}

.school__table td:nth-child(1) {
	width: 43.65%;
}

.school__table td:nth-child(2) {
	width: 56.35%;
}

.school__table.is-pc {
	display: none;
}

.school__table.is-sp {
	display: table;
}

.school__thumb__item {
	width: 100%;
	margin-bottom: 25px;
}

.school__thumb__item:nth-child(odd) {
	padding: 0;
}

.school__thumb__item:nth-child(even) {
	padding: 0;
}

.school__thumb__txt {
	margin-top: 13px;
	font-size: 1.4rem;
}

.school__thumb__txt::after {
	font-size: 0.6rem;
}

.address__body {
	padding: 0;
	border-bottom: none;
}

.address__table th,
.address__table td {
	height: 50px;
	padding: 0;
	text-align: center;
}

.address__table th {
	width: 100%;
	background-color: #ededed;
	font-size: 1.5rem;
}

.address__table td {
	width: 100%;
	border-bottom: 1px solid #000;
	font-size: 1.2rem;
	line-height: 1.66;
}

.address__table.is-pc {
	display: none;
}

.address__table.is-sp {
	display: table;
}

.faq__body {
	margin-top: 0;
}

.faq__list {
	margin-bottom: 10px;
}

.faq__list__ttl {
	padding: 20px 45px 15px 0;
	font-size: 1.2rem;
}

.faq__list__ttl::after {
	right: 0;
	width: 30px;
	height: 30px;
	background-size: 13px 13px;
}

.faq__list__ttl.is-active::after {
	background-size: 7px auto;
}

.faq__list__ttl .is-block-sp {
	display: block;
}

.faq__list__txt {
	padding: 10px 20px;
	font-size: 1.2rem;
}

.access__body {
	display: block;
	margin: 25px 0 0;
	padding: 0;
}

.info {
	width: 100%;
	margin-bottom: 30px;
	padding: 0 30px;
}

.info__ttl {
	margin: 0;
	padding: 0;
	font-size: 1.5rem;
	text-align: center;
}

.info__list {
	margin: 10px 0 23px;
	padding: 0;
}

.info__list__item {
	font-size: 1rem;
	line-height: 1.85;
	text-align: center;
}

.map {
	width: 100%;
}

.map__body {
	padding-bottom: 91.3%;
}

.map__btn {
	display: none;
}

.course__body {
	margin: -40px auto 75px;
}

.course__txt {
	font-size: 1.2rem;
	line-height: 2.2;
}

p + .course__txt {
	margin-top: 2.2em;
}

.course__box {
	margin: 12px 0;
}

.course__box__inner {
	display: block;
	padding: 10px 15px;
}

.course__box__thumb {
	display: block;
	padding: 22px 22px 12px;
}

.course__box__img {
	width: 100%;
	padding: 0 0 12px;
}

.course__box__txt {
	width: 100%;
	margin: 0;
	font-size: 1.2rem;
	letter-spacing: normal;
	line-height: 2.2;
}

.course__list__item {
	font-size: 1.2rem;
	line-height: 2.2;
}

.course__thumb {
	margin-top: 23px;
}

.course__thumb__item {
	display: block;
	width: 100%;
	margin-bottom: 15px;
}

.course__thumb__item:nth-child(odd) {
	padding: 0;
}

.course__thumb__item:nth-child(even) {
	padding: 0;
}

.course__thumb__item:last-child {
	margin-bottom: 0;
}

.course__thumb__item.is-wide {
	margin-bottom: -8px;
}

}

@media print {

html {
	width: 1200px;
	height: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	transform: scale(0.9);
	transform-origin: 0 0;
}

}
