@charset "utf-8";

/* -----------------------------------------------------
styles.css
----------------------------------------------------- */

.wrapper {
	position: relative;
	width: 100%;
	height: auto;
	margin: 0 auto;
	text-align: left;
	font-size: 18px;
	font-size: 1.8rem;
	color: #20324a;
}

a {
	outline: none;
	text-decoration: none;
	color: #000;
}

.txt_r {
	text-align: center;
}
.txt_c {
	text-align: center;
}
.txt_l {
	text-align: center;
}

.disp_in {
	display: inline;
}
.disp_inblk {
	display: inline-block;
}
.disp_blk {
	display: block;
}

.space {
	margin-right: 2px;
	margin-left: 2px;
}
.space2 {
	margin-right: 2px;
	margin-left: 5px;
}


strong {
	font-weight: bold;
}

.bold {
	font-weight: bold;
}
.normal {
	font-weight: normal;
}


.fontss {
	font-size: 14px;
	font-size: 1.4rem;
}
.fonts {
	font-size: 16px;
	font-size: 1.6rem;
}
.fontl {
	font-size: 20px;
	font-size: 2.0rem;
}
.fontll {
	font-size: 22px;
	font-size: 2.2rem;
}


.super {
	padding-left: 2px;
	vertical-align: super;
	font-size: 14px;
	font-size: 1.4rem;
	letter-spacing: 0.1em;
}

.tate {
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}


.font_red {
	color: #dc0000;
}
.font_gray {
	color: #666;
}


.strikethrough {
	position: relative;
	padding: 0 6px;
}
.strikethrough:after {
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	transform: rotate(-12deg);
	width: 100%;
	border-top: 1px solid #f00;
}



/* ***** header ***** */

header {
	width: 100%;
}
.header_inner {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	max-width: 1380px;
	margin: 0 auto;
	padding: 20px 40px;
}
header .logo {
	width: calc(100% - 260px);
	margin-right: auto;
	line-height: 1.2;
	font-size: 30px;
	font-size: 3.0rem;
	color: #94214d;
}
header .logo strong {
	font-weight: normal;
}
header .logo .txt2 {
	display: inline-block;
}
header .btn {
	width: 260px;
	margin: 0 0 0 auto;
}
header .btn a {
	display: block;
	padding: 20px 30px;
	line-height: 1.4;
	text-align: center;
	letter-spacing: 0.08em;
	color: #fff;
	background-color: #294b7a;
	border-radius: 5px;
	transition: background-color 0.5s ease;
}
header .btn a:after {
	display: none;
}



/* ***** main ***** */

main {
	text-align: left;
}


.page_nav {
	width: 100%;
	margin: 0 auto;
/*
	padding: 0 0 20px;
*/
}
.page_nav.fixed {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 99;
}
.page_nav ul.flex_box {
	max-width: 1300px;
/*
	height: 82px;
*/
	margin: 0 auto;
	-webkit-box-align: center;
	align-items: center;
	-webkit-box-pack: center;
	justify-content: center;
	color: #fff;
	background-color: #94214d;
	border-radius: 10px;
}
.page_nav ul li {
	position: relative;
/*
	width: 16.66666%
*/
	width: 20%
}
.page_nav ul li:after {
	content: "";
	display: inline-block;
	position: absolute;
	top: 50%;
	right: 0;
	-ms-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 1px;
	height: 30px;
	background-color: #fff;
}
.page_nav ul li:last-child:after {
	display: none;
}
.page_nav ul li a {
	display: block;
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	-webkit-box-pack: center;
	justify-content: center;
	line-height: 1.2;
	text-align: center;
	height: 82px;
/*
	padding: 30px 10px;
*/
	padding: 0 10px;
	color: #fff;
}


/* ***** footer ***** */

footer {
	color: #94214d;
	background-color: #fff;
}
.footer_inner {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	max-width: 1380px;
	margin: 0 auto;
	padding: 40px 40px 30px;
}
.footer_logo {
/*
	width: calc(100% - 330px);
*/
	width: calc(100% - 350px);
	line-height: 1.2;
	font-size: 30px;
	font-size: 3.0rem;
}
.footer_logo strong {
	font-weight: normal;
}
.footer_logo .txt1 {
}
.footer_logo .txt2 {
	display: inline-block;
}
address {
/*
	width: 300px;
	text-align: right;
*/
	width: 350px;
	padding-left: 20px;
}
address span.footer_info {
	margin-left: auto;
/*
	width: 300px;
*/
	width: 330px;
	display: inline-block;
	padding-bottom: 1px;
	line-height: 2em; /* 文字の高さ */
	text-align: left;
	background-image: linear-gradient(180deg, #efafca 1px, transparent 1px); /* 罫線の色と太さ  */
	background-size: 100% 2em; /* 行の高さ */
}
address span.footer_info span.tel {
	padding-left: 36px;
	background: url(../img/icon_tel.png) no-repeat left 8px center;
}
address span.footer_info span.mail {
	padding-left: 36px;
	background: url(../img/icon_mail.png) no-repeat left 8px center;
}
.copyright {
	text-align: right;
	font-size: 12px;
	font-size: 1.2rem;
	letter-spacing: 0.05em;
}



/* ***** breadcrumb ***** */

.breadcrumb {
	max-width: 1120px;
	margin: 0 auto;
	padding: 0 40px 50px;
}
ul.breadcrumb_list {
	display: -webkit-box;
	display: flex;
}
ul.breadcrumb_list li {
	position: relative;
	padding-right: 20px;
	font-size: 15px;
	font-size: 1.5rem;
	color: #999;
}
ul.breadcrumb_list li:last-child {
	padding-right: 0;
}
ul.breadcrumb_list li:after {
	content: '';
	position: absolute;
	top: 26%;
	right: 8px;
	width: 6px;
	height: 6px;
	border-top: solid 1px #999;
	border-right: solid 1px #999;
	transform: rotate(45deg);
}
ul.breadcrumb_list li:last-child:after {
	display: none;
}
ul.breadcrumb_list li a {
	color: #20324a;
	border-bottom: 1px solid #999;
	transition: background-color 0.5s ease;
}


.section_ttl {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	margin-bottom: 90px;
	background-color: #ffa5b1;
}
.section3 .section_ttl {
	margin-bottom: 0;
}
.section_ttl span {
	width: 50%;
}
.section_ttl span.ttl_txt {
	padding-left: 3em;
	line-height: 1.5;
	text-align: left;
	font-size: 40px;
	font-size: 4.0rem;
	letter-spacing: 0.04em;
}
.section_ttl span.ttl_txt .eng {
	display: inline-block;
	margin-bottom: 5px;
	font-size: 23px;
	font-size: 2.3rem;
	color: #fff;
}

.primary_ttl {
	margin-bottom: 50px;
	line-height: 1.4;
	font-size: 40px;
	font-size: 4.0rem;
	letter-spacing: 0.04em;
}
.primary_ttl .eng {
	display: inline-block;
	font-size: 23px;
	font-size: 2.3rem;
	color: #94214d;
}

.sub_ttl {
	margin-bottom: 40px;
	line-height: 1.6;
	font-size: 30px;
	font-size: 3.0rem;
	letter-spacing: 0.04em;
}
.section_message .sub_ttl, .section_faq .sub_ttl {
	margin-bottom: 70px;
	text-align: center;
	font-size: 40px;
	font-size: 4.0rem;
}


.txt {
	line-height: 2.0;
	letter-spacing: 0.04em;
}
.txt a {
	color: #4671d0;
	transition-duration: 0.3s;
	transition-timing-function: ease-in-out;
}

.indent {
	margin-left: 1em;
	text-indent: -1em;
}
.indenth {
	margin-left: 1.5em;
	text-indent: -1.5em;
}
.indent2 {
	margin-left: 2em;
	text-indent: -2em;
}
.indent2h {
	margin-left: 2.5em;
	text-indent: -2.5em;
}
.indent3 {
	margin-left: 3em;
	text-indent: -3em;
}
.indent3h {
	margin-left: 3.5em;
	text-indent: -3.5em;
}
.indent4 {
	margin-left: 4em;
	text-indent: -4em;
}
.indent4h {
	margin-left: 4.5em;
	text-indent: -4.5em;
}
.indent5 {
	margin-left: 5em;
	text-indent: -5em;
}
.indent5h {
	margin-left: 5.5em;
	text-indent: -5.5em;
}
.indent6 {
	margin-left: 6em;
	text-indent: -6em;
}
.indent6h {
	margin-left: 6.5em;
	text-indent: -6.5em;
}
span.indent, strong.indent, span.indenth, strong.indenth, span.indent2, strong.indent2, span.indent2h, strong.indent2h, span.indent3, strong.indent3, span.indent3h, strong.indent3h, span.indent4, strong.indent4, span.indent4h, strong.indent4h, span.indent5, strong.indent5, span.indent5h, strong.indent5h, span.indent6, strong.indent6, span.indent6h, strong.indent6h {
	display: inline-block;
}

span.indent .disp_inblk, strong.indent .disp_inblk {
	margin-left: 1em;
}
span.indenth .disp_inblk, strong.indenth .disp_inblk {
	margin-left: 1.5em;
}
span.indent2 .disp_inblk, strong.indent2 .disp_inblk {
	margin-left: 2em;
}
span.indent2h .disp_inblk, strong.indent2h .disp_inblk {
	margin-left: 2.5em;
}
span.indent3 .disp_inblk, strong.indent3 .disp_inblk {
	margin-left: 3em;
}
span.indent3h .disp_inblk, strong.indent3h .disp_inblk {
	margin-left: 3.5em;
}
span.indent4 .disp_inblk, strong.indent4 .disp_inblk {
	margin-left: 4em;
}
span.indent4h .disp_inblk, strong.indent4h .disp_inblk {
	margin-left: 4.5em;
}
span.indent5 .disp_inblk, strong.indent5 .disp_inblk {
	margin-left: 5em;
}
span.indent5h .disp_inblk, strong.indent5h .disp_inblk {
	margin-left: 5.5em;
}
span.indent6 .disp_inblk, strong.indent6 .disp_inblk {
	margin-left: 6em;
}
span.indent6h .disp_inblk, strong.indent6h .disp_inblk {
	margin-left: 6.5em;
}


.flex_box {
	display: -webkit-box;
	display: flex;
}

.pic {
	line-height: 0;
}

.iframe {
	position: relative;
	width: 100%;
	margin-bottom: 15px;
	padding-bottom: 56.25%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
}
.iframe iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}


.btn {
	max-width: 460px;
	margin: 0 auto;
}
.section1 .contents .box .btn.mt {
	margin: 60px auto 0;
}
.section2 .btn {
	margin: 0 auto;
}
.btn a {
	display: block;
	position: relative;
	padding: 18px 30px;
	line-height: 1.4;
	text-align: center;
	font-size: 20px;
	font-size: 2.0rem;
	letter-spacing: 0.04em;
	color: #fff;
	background-color: #294b7a;
	border-radius: 30px;
	transition: background-color 0.5s ease;
}
.btn a:after {
	content: '';
	position: absolute;
	top: 42%;
	right: 25px;
	width: 8px;
	height: 8px;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	transform: rotate(45deg);
}


.box {
	margin-bottom: 30px;
	padding: 35px 50px 40px;
	background-color: #fff;
	border: 1px solid #efafca;
	border-radius: 10px;
}
.flow .box {
	position: relative;
	margin-bottom: 56px;
	padding: 30px 40px;
	text-align: center;
	border: 1px solid #94214d;
}
.flow .box:last-child {
	margin-bottom: 0;
}
.flow .box:after {
	content: "";
	display: block;
	position: absolute;
	bottom: -38px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 14px 18px 0 18px;
	border-color: #94214d transparent transparent transparent;
}
.flow .box.arrow_none:after, .flow .box:last-child:after {
	display: none;
}
.flow .box .txt {
	font-size: 20px;
	font-size: 2.0rem;
}
.page_curriculum .box {
	margin-bottom: 60px;
}

.box2 {
	padding: 25px 30px;
	text-align: left;
	background-color: #fff0f1;
	border-radius: 10px;
}
.flow .box .box2 {
	margin-top: 20px;
	padding: 25px 30px 20px;
}
.flow .box .box2_inner {
	max-width: 620px;
	margin: 0 auto;
}
.flow .box .box2 .txt {
	margin-bottom: 5px;
	font-size: 18px;
	font-size: 1.8rem;
}

.slide_box {
	padding: 30px;
	text-align: left;
	background-color: #f4f7fb;
	border-radius: 10px;
}

.table_box {
	margin-bottom: 50px;
	text-align: left;
}

.box_ttl {
	position: relative;
	margin-bottom: 20px;
	padding-left: 18px;
	line-height: 1.4;
	font-size: 24px;
	font-size: 2.4rem;
	letter-spacing: 0.04em;
}
.box_ttl:before {
	content: '';
	position: absolute;
	top: 16%;
	left: 0;
	width: 6px;
/*
	height: 100%;
*/
	height: 24px;
	background: #94214d;
}
.box_ttl .fonts {
	font-size: 20px;
	font-size: 2.0rem;
}

.box3_ttl {
	margin-bottom: 12px;
	padding-bottom: 8px;
	line-height: 1.5;
	font-size: 24px;
	font-size: 2.4rem;
	letter-spacing: 0.04em;
/*
	border-bottom: 2px dotted #efafca;
*/
}

.box_sub_ttl {
	margin-bottom: 10px;
	line-height: 1.5;
	font-size: 24px;
	font-size: 2.4rem;
	color: #94214d;
	letter-spacing: 0.04em;
}

.note {
	background-image: linear-gradient(180deg, #efafca 1px, transparent 1px); /* 罫線の色と太さ  */
	background-size: 100% 3em; /* 行の高さ */
	line-height: 3em; /* 文字の高さ */
	padding-bottom: 1px;
}

ul.list_disc {
	margin-left: 1em;
}
ul.list_disc li {
	list-style-type: disc;
	padding-bottom: 5px;
	line-height: 1.5;
}
ul.list_disc.curriculum_list li {
	padding-left: 2.5em;
	text-indent: -2.5em;
}


.table_scroll {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	padding-bottom: 10px;
}

table.table_style {
	width: 100%;
	border-collapse: collapse;
}
table.table_style th, table.table_style td {
	padding: 10px 10px;
	line-height: 1.6;
	text-align: center;
	vertical-align: middle;
	font-size: 18px;
	font-size: 1.8rem;
	letter-spacing: 0.04em;
	white-space: nowrap;
	background-color: #fff;
	border: 1px solid #94214d;
}
table.table_style.column3 th, table.table_style.column3 td {
	width: 33.333333%;
}
table.table_style.column4 th, table.table_style.column4 td {
	width: 28%;
}
table.table_style.column4 td:last-child {
	width: 16%;
}
table.table_style td.pdf a {
	position: relative;
	padding-left: 15px;
	color: #294b7a;
	transition: background-color 0.5s ease;
}
table.table_style td.pdf a:after {
	content: '';
	position: absolute;
	top: 28%;
	left: 0;
	width: 6px;
	height: 6px;
	border-top: solid 2px #294b7a;
	border-right: solid 2px #294b7a;
	transform: rotate(45deg);
}
table.table_style th {
	color: #94214d;
}
table.table_style th.width-s {
	width: 48px;
}
table.table_style thead th {
	padding: 15px 10px;
	line-height: 1.4;
	font-size: 20px;
	font-size: 2.0rem;
	color: #fff;
	background-color: #94214d;
	border-right: 1px solid #fff;
}
table.table_style thead th:first-child {
	border-left: 1px solid #94214d;
}
table.table_style thead th:last-child {
	width: 160px;
	border-right: 1px solid #94214d;
}

.table_memo {
	margin-left: 3.7em;
	text-indent: -3.7em;
	line-height: 1.7;
	letter-spacing: 0.04em;
}




.mainvisual {
	max-width: 1380px;
	padding: 0 40px;
	margin: 0 auto 60px;
	text-align: center;
}
.mainvisual .sp {
	display: none;
}

.top_txt {
	max-width: 1120px;
	padding: 0 40px 70px;
	margin: 0 auto;
	line-height: 2.0;
	font-size: 24px;
	font-size: 2.4rem;
	letter-spacing: 0.04em;
}


.section {
	max-width: 1380px;
	margin: 0 auto;
	padding: 0 0 100px;
	background-color: #fff3f4;
}
.section.section1 {
	margin: 20px auto 0;
}
.section.section_message {
	padding: 80px 0 100px;
	background-color: #fff;
}
.section.section_movie {
	padding: 50px 0 0;
	background-color: #294b7a;
}
.section.section_inquiry {
	padding: 80px 0 0;
	background-color: #294b7a;
}
.section.section_curriculum {
	padding: 12px 0 0;
}
.section.section_faq {
	padding: 80px 0 100px;
	background-color: #fff;
}


.section_inner {
	padding: 100px 0;
}
.section_inner.style1 {
	background-color: #fff;
}
.section_inner.style2 {
	background-color: #fff3f4;
}

.contents {
	max-width: 1120px;
	margin: 0 auto;
	padding: 0 40px;
}
.section1 .contents {
	padding: 80px 40px 0;
}
.contents_movie {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 40px;
}

.curriculum_cont {
	padding: 0 0 100px;
}

ul.flex_box.column3 {
	-webkit-box-pack: justify;
	justify-content: space-between;
}
ul.flex_box.column3 li {
	display: -webkit-box;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	width: 32%;
	margin: 0 1% 20px;
	padding: 30px 20px;
	background-color: #fff;
	border: 1px solid #efafca;
	border-radius: 10px;
}
ul.flex_box.column3 li:nth-child(1) {
	margin: 0 1% 20px 0;
}
ul.flex_box.column3 li:nth-child(2) {
}
ul.flex_box.column3 li:nth-child(3) {
	margin: 0 0 20px 1%;
}
.section3 ul.flex_box.column3 li {
	padding: 15px 15px 20px;
}
ul.flex_box.column4 li .pic {
	display: block;
}
.section1 ul.flex_box.column3 li .pic {
	max-width: 140px;
	margin: 0 auto 30px;
}
.section3 ul.flex_box.column3 li .pic {
	margin: 0 auto 20px;
}
ul.flex_box.column3 li .txt {
	line-height: 1.5;
	font-size: 20px;
	font-size: 2.0rem;
	letter-spacing: 0.04em;
}
ul.flex_box.column3 li .txt .fonts {
	font-size: 18px;
	font-size: 1.8rem;
}
ul.flex_box.column3 li .txt .disp_blk.fonts {
	padding-top: 5px;
}
.section3 ul.flex_box.column3 li .txt {
	text-align: center;
}

ul.flex_box.column4 {
	-webkit-box-pack: justify;
	justify-content: space-between;
}
ul.flex_box.column4 li {
	display: -webkit-box;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	width: 23%;
	margin: 0 1% 20px;
	padding: 30px 20px;
	background-color: #fff;
	border: 1px solid #efafca;
	border-radius: 10px;
}
.section3 ul.flex_box.column4 li {
	padding: 15px 15px 20px;
}
ul.flex_box.column4 li:nth-child(1) {
	margin: 0 2% 20px 0;
}
ul.flex_box.column4 li:nth-child(2) {
	margin: 0 1.5 20px 0.5%;
}
ul.flex_box.column4 li:nth-child(3) {
	margin: 0 0.5% 20px 1.5%;
}
ul.flex_box.column4 li:nth-child(4) {
	margin: 0 0 20px 2%;
}
ul.flex_box.column4 li .pic {
	display: block;
}
.section1 ul.flex_box.column4 li .pic {
	max-width: 140px;
	margin: 0 auto 30px;
}
.section3 ul.flex_box.column4 li .pic {
	margin: 0 auto 20px;
}
ul.flex_box.column4 li .txt {
	line-height: 1.5;
	font-size: 20px;
	font-size: 2.0rem;
	letter-spacing: 0.04em;
}
ul.flex_box.column4 li .txt .fonts {
	font-size: 18px;
	font-size: 1.8rem;
}
ul.flex_box.column4 li .txt .disp_blk.fonts {
	padding-top: 5px;
}
.section3 ul.flex_box.column4 li .txt {
	text-align: center;
}


.section2 .flex_box.column3 {
	margin-top: 30px;
	margin-bottom: 60px;
}
.section2 .flex_box.column3 .box3 {
	width: 32%;
}
.section2 .flex_box.column3 .box3:nth-child(1) {
	margin-right: 1%;
}
.section2 .flex_box.column3 .box3:nth-child(2) {
	margin-right: 1%;
	margin-left: 1%;
}
.section2 .flex_box.column3 .box3:nth-child(3) {
	margin-left: 1%;
}
.section2 .flex_box.column3 .box3 .pic {
	margin-bottom: 12px;
}
.section2 .flex_box.column3 .box3 .pic .sp {
	display: none;
}
.section2 .flex_box.column3 .box3 .txt {
	font-size: 16px;
	font-size: 1.6rem;
}


.slick-slider {
	overflow: hidden;
}
.slick-initialized .slick-slide {
	float: left;
	height: 100%;
	min-height: 1px;
	margin: 0 25px;
}
.section_message_slide .slide_box {
	padding-bottom: 10px;
}
.section_message_slide .slide_box .txt {
	margin-bottom: 20px;
}
.section_message_slide .slide_box .txt .name {
	display: block;
	margin-bottom: 2px;
	font-weight: bold;
	font-size: 22px;
	font-size: 2.2rem;
}
.section_message_slide .slide_box .txt .subject {
	display: block;
	line-height: 1.8;
}


.section3 .section_inner.style1 .flex_box.column2 {
	-webkit-box-align: center;
	align-items: center;
}
.section3 .flex_box.column2 .flex_box_cont {
	width: 56%;
	padding-right: 4.5em;
}
.section3 .flex_box.column2 .pic {
	width: 44%;
}
.section3 .section_inner.style1 .flex_box.column2 .pic img {
	border-radius: 15px;
}


.faq_box {
	margin-bottom: 10px;
	text-align: left;
	background-color: #f4f7fb;
	border-radius: 10px;
}
.faq_box .faq_q {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	padding: 25px 30px;
}
.faq_box .faq_q .icon_q {
	width: 60px;
	font-size: 40px;
	font-size: 4.0rem;
	color: #bfccdb;
}
.faq_box .faq_q .icon_plus-minus {
	position: relative;
	width: 28px;
	height: 28px;
	margin-left: auto;
	color: #6b89b5;
}
.faq_box .faq_q .icon_plus-minus:before, .faq_box .faq_q .icon_plus-minus:after {
	content: "";
	position: absolute;
	top: 12px;
	width: 24px;
	height: 4px;
	background-color: #6b89b5;
}
.faq_box .faq_q .icon_plus-minus:after {
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
}
.faq_box .faq_q.open .icon_plus-minus {
	width: 28px;
	height: 4px;
	color: #6b89b5;
	background-color: #6b89b5;
}
.faq_box .faq_q.open .icon_plus-minus:before, .faq_box .faq_q.open .icon_plus-minus:after {
	display: none;
}
.faq_box .faq_q.open .icon_plus-minus:after {
	display: none;
}
.faq_box .faq_q .q_txt {
	width: calc(100% - 100px);
	line-height: 1.4;
	font-size: 20px;
	font-size: 2.0rem;
}
.faq_box .faq_a {
	display: none;
	padding: 30px 3em;
	background-color: #e9eef4;
	border-radius: 0 0 10px 10px;
}


.section_movie .flex_box.column2 {
	-webkit-box-align: start;
	align-items: flex-start;
}
.section_movie .flex_box.column2 .primary_ttl {
	width: 46%;
	padding-right: 1.5em;
	color: #fff;
}
.section_movie .flex_box.column2 .primary_ttl .eng {
	color: #fff;
}
.section_movie .flex_box.column2 .movie {
	width: 54%;
	padding-top: 50px;
}
.section_movie .flex_box.column2 .movie .iframe, .section_movie .flex_box.column2 .movie .coming_soon {
	margin-bottom: 40px;
}
.section_movie .pic {
	max-width: 400px;
	margin-top: -100px;
}

.section_inquiry .inquiry_box.flex_box {
	-webkit-box-align: center;
	align-items: center;
	max-width: 1160px;
	margin: 0 auto;
	padding: 0 40px;
}
.section_inquiry .inquiry_box.flex_box .pic {
	max-width: 420px;
	margin: 0 auto 0 0;
	padding: 0 20px 0 0;
}
.section_inquiry .inquiry_box.flex_box .btn {
	width: 54%;
	margin: 0 auto;
}

.section_movie .movie .btn a, .section_inquiry .inquiry_box.flex_box .btn a {
	color: #294b7a;
	background-color: #fff;
}
.section_movie .movie .btn a:after, .section_inquiry .inquiry_box.flex_box .btn a:after {
	border-top: solid 2px #294b7a;
	border-right: solid 2px #294b7a;
}





/* -------------------------------------------------------
●画面の横幅が961px以上
------------------------------------------------------- */

@media screen and (min-width: 961px) {
	
	ul.breadcrumb_list li a:hover {
		opacity: 0.7;
	}
	
	
	.btn a:hover {
		background-color: rgba(1, 59, 129, 0.8);
	}
	.section_movie .movie .btn a:hover, .section_inquiry .inquiry_box.flex_box .btn a:hover {
		background-color: rgba(255, 255, 255, 0.8);
	}
	
	
	.txt a:hover {
		opacity: 0.7;
	}
	
	
	table.table_style td.pdf a:hover {
		opacity: 0.7;
	}
	
	
	
}





/* -------------------------------------------------------
●画面の横幅が1280pxまで
------------------------------------------------------- */

@media screen and (max-width: 1280px) {
	
	
	
	
}





/* -------------------------------------------------------
●画面の横幅が1160pxまで
------------------------------------------------------- */

@media screen and (max-width: 1160px) {
	
	
	
	
}





/* -------------------------------------------------------
●画面の横幅が1080pxまで
------------------------------------------------------- */

@media screen and (max-width: 1080px) {
	
	
	
	
}





/* -------------------------------------------------------
●画面の横幅が1024pxまで
------------------------------------------------------- */

@media screen and (max-width: 1024px) {
	
	.section3 .flex_box.column2 .flex_box_cont {
		padding-right: 3.5em;
	}
	
	.section_movie .pic {
		max-width: 360px;
	}
	
	
	
	
	
	
}





/* -------------------------------------------------------
画面サイズ960pxまで
------------------------------------------------------- */

@media screen and (max-width:960px) {
	
	.wrapper {
		font-size: 17px;
		font-size: 1.7rem;
	}
	
	.fontss {
		font-size: 13px;
		font-size: 1.3rem;
	}
	.fonts {
		font-size: 15px;
		font-size: 1.5rem;
	}
	.fontl {
		font-size: 19px;
		font-size: 1.9rem;
	}
	.fontll {
		font-size: 21px;
		font-size: 2.1rem;
	}
	
	
	header .logo .txt2 {
		font-size: 28px;
		font-size: 2.8rem;
	}
	
	
	.footer_logo {
		width: calc(100% - 330px);
	}
	.footer_logo .txt2 {
		font-size: 26px;
		font-size: 2.6rem;
	}
	address {
		width: 330px;
	}
	address span.footer_info {
		width: 310px;
	}
	
	
	.page_nav ul li a {
		font-size: 16px;
		font-size: 1.6rem;
	}
	
	
	.section_ttl span.ttl_txt {
		padding-left: 30px;
		font-size: 40px;
		font-size: 4.0rem;
		letter-spacing: 0.04em;
	}
	
	
	.slick-initialized .slick-slide {
		margin: 0 15px;
	}
	.section_message_slide .slide_box .txt .name {
		font-size: 21px;
		font-size: 2.1rem;
	}
	
	
	.section3 .flex_box.column2 .flex_box_cont {
		padding-right: 2.5em;
	}
	
	
	.section_movie .pic {
		max-width: 300px;
	}
	
	.section_inquiry .inquiry_box.flex_box {
		padding: 0px 40px;
	}
	.section_inquiry .pic {
		max-width: 300px;
	}
	.section_inquiry .pic img {
		width: 100%;
	}
	
	
	.top_txt {
		font-size: 20px;
		font-size: 2.0rem;
	}
	
	
	
}





/* -------------------------------------------------------
画面サイズ768pxまで
------------------------------------------------------- */
	
@media screen and (max-width:768px) {
	.wrapper {
		font-size: 15px;
		font-size: 1.5rem;
	}
	
	.fontss {
		font-size: 11px;
		font-size: 1.1rem;
	}
	.fonts {
		font-size: 13px;
		font-size: 1.3rem;
	}
	.fontl {
		font-size: 17px;
		font-size: 1.7rem;
	}
	.fontll {
		font-size: 19px;
		font-size: 1.9rem;
	}
	
	
	
	.super {
		font-size: 12px;
		font-size: 1.2rem;
	}
	
	
	.header_inner {
		padding: 20px;
	}
	header .logo {
		width: calc(100% - 200px);
		font-size: 26px;
		font-size: 2.6rem;
	}
	header .logo .txt1 {
		font-size: 24px;
		font-size: 2.4rem;
	}
	header .logo .txt2 {
		font-size: 20px;
		font-size: 2.0rem;
	}
	header .btn {
		width: 180px;
	}
	header .btn a {
		padding: 15px 10px;
		font-size: 15px;
		font-size: 1.5rem;
	}
	
	
	.page_nav ul li::after {
		height: 20px;
	}
	.page_nav ul li a {
		height: 62px;
		padding: 0 10px;
	}
	
	
	.footer_inner {
		padding: 30px 20px 20px;
	}
	.footer_logo {
		width: calc(100% - 300px);
		font-size: 23px;
		font-size: 2.3rem;
	}
	.footer_logo .txt2 {
		font-size: 20px;
		font-size: 2.0rem;
	}
	address {
		width: 300px;
		margin-left: auto;
		padding-left: 20px;
	}
	address span.footer_info {
		width: 100%;
	}
	address span.footer_info span.tel {
		padding-left: 30px;
		background-size: 12px auto;
	}
	address span.footer_info span.mail {
		padding-left: 30px;
		background-size: 14px auto;
	}
	.copyright {
		font-size: 10px;
		font-size: 1.0rem;
	}
	
	
	.breadcrumb {
		padding: 0 20px 40px;
	}
	ul.breadcrumb_list li {
		padding-right: 19px;
		font-size: 13px;
		font-size: 1.3rem;
	}
	ul.breadcrumb_list li:after {
		right: 7px;
		width: 5px;
		height: 5px;
	}
	
	
	
	table.table_style th, table.table_style td {
		font-size: 14px;
		font-size: 1.4rem;
	}
	table.table_style thead th {
		line-height: 1.4;
		font-size: 15px;
		font-size: 1.5rem;
	}
	
	
	.section {
		padding: 0 0 60px;
	}
	.section.section_message {
		padding: 60px 0 80px
	}
	
	
	.section_ttl {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		flex-direction: column;
		margin-bottom: 50px;
	}
	.section3 .section_ttl {
		margin-bottom: 0;
	}
	.section_ttl span {
		width: 100%;
	}
	.section_ttl span.ttl_txt {
		padding: 30px 20px 35px;
		font-size: 32px;
		font-size: 3.2rem;
	}
	.section_ttl span.ttl_txt .eng {
		margin-bottom: 5px;
		font-size: 20px;
		font-size: 2.0rem;
	}

	.primary_ttl {
		margin-bottom: 40px;
		font-size: 32px;
		font-size: 3.2rem;
	}
	.primary_ttl .eng {
		font-size: 20px;
		font-size: 2.0rem;
	}
	
	.sub_ttl {
		margin-bottom: 20px;
		font-size: 23px;
		font-size: 2.3rem;
	}
	.section_message .sub_ttl, .section_faq .sub_ttl {
		margin-bottom: 40px;
		font-size: 32px;
		font-size: 3.2rem;
	}
	
	
	
	.btn a {
		padding: 18px 20px;
		font-size: 15px;
		font-size: 1.5rem;
	}
	.btn a:after {
		top: 42%;
		right: 20px;
		width: 6px;
		height: 6px;
	}
	
	
	.box {
		margin-bottom: 20px;
		padding: 20px 20px 25px;
	}
	.flow .box {
		margin-bottom: 32px;
		padding: 15px 20px;
	}
	.flow .box:after {
		bottom: -22px;
		border-width: 10px 12px 0 12px;
	}
	.flow .box .txt {
		font-size: 15px;
		font-size: 1.5rem;
	}
	.page_curriculum .box {
		margin-bottom: 60px;
	}

	.box2 {
		padding: 25px 30px;
		text-align: left;
		background-color: #fff0f1;
		border-radius: 10px;
	}
	.flow .box .box2 {
		margin-top: 15px;
		padding: 15px 20px 20px;
	}
	.flow .box .box2 .txt {
		margin-bottom: 5px;
		font-size: 14px;
		font-size: 1.4rem;
	}
	
	.slide_box {
		padding: 20px;
	}

	.table_box {
		margin-bottom: 40px;
	}

	.box_ttl {
		margin-bottom: 20px;
		padding-left: 14px;
		font-size: 21px;
		font-size: 2.1rem;
	}
	.box_ttl:before {
		top: 15%;
		left: 0;
		width: 4px;
		height: 18px;
	}
	.box_ttl .fonts {
		font-size: 15px;
		font-size: 1.5rem;
	}
	
	.box3_ttl {
		margin-bottom: 12px;
		padding-bottom: 6px;
		line-height: 1.5;
		font-size: 21px;
		font-size: 2.1rem;
	}
	
	.box_sub_ttl {
		margin-bottom: 10px;
		font-size: 21px;
		font-size: 2.1rem;
	}
	
	
	
	.mainvisual {
		margin-bottom: 40px;
		padding: 0 20px;
	}
	
	.top_txt {
		padding: 0 20px 50px;
		font-size: 18px;
		font-size: 1.8rem;
	}
	
	
	
	ul.flex_box.column3 {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		flex-direction: column;
	}
	ul.flex_box.column3 li {
		width: 100%;
	}
	.section3 ul.flex_box.column3 li {
		padding: 20px 15px 20px;
	}
	ul.flex_box.column3 li .txt {
		font-size: 18px;
		font-size: 1.8rem;
	}
	ul.flex_box.column3 li .txt {
		font-size: 18px;
		font-size: 1.8rem;
	}
	ul.flex_box.column3 li .txt .disp_blk.fonts {
		font-size: 16px;
		font-size: 1.6rem;
	}
	
	ul.flex_box.column4 {
		flex-wrap: wrap;
	}
	ul.flex_box.column4 li {
		width: 49%;
		padding: 20px 10px;
	}
	.section3 ul.flex_box.column4 li {
		padding: 15px 15px 20px;
	}
	ul.flex_box.column4 li:nth-child(1) {
		margin: 0 1% 8px 0;
	}
	ul.flex_box.column4 li:nth-child(2) {
		margin: 0 0 8px 1%;
	}
	ul.flex_box.column4 li:nth-child(3) {
		margin: 0 1% 20px 0;
	}
	ul.flex_box.column4 li:nth-child(4) {
		margin: 0 0 20px 1%;
	}
	ul.flex_box.column4 li .txt {
		font-size: 15px;
		font-size: 1.5rem;
	}
	
	
	.section2 .flex_box.column3 {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		flex-direction: column;
		margin-top: 30px;
		margin-bottom: 40px;
	}
	.section2 .flex_box.column3 .box3 {
		width: 100%;
		max-width: 360px;
	}
	.section2 .flex_box.column3 .box3:nth-child(1) {
		margin: 0 auto 30px;
	}
	.section2 .flex_box.column3 .box3:nth-child(2) {
		margin: 0 auto 30px;
	}
	.section2 .flex_box.column3 .box3:nth-child(3) {
		margin: 0 auto;
	}
	.section2 .flex_box.column3 .box3 .pic {
		margin-bottom: 12px;
	}
	.section2 .flex_box.column3 .box3 .pic .pc {
		display: none;
	}
	.section2 .flex_box.column3 .box3 .pic .sp {
		display: block;
		max-width: 360px;
		width: 100%;
		margin: 0 auto;
	}
	.section2 .flex_box.column3 .box3 .txt {
		font-size: 12px;
		font-size: 1.2rem;
	}
	
	
	
	.slick-initialized .slick-slide {
		margin: 0 10px;
	}
	.section_message_slide .slide_box {
		padding-bottom: 5px;
	}
	.section_message_slide .slide_box .txt {
		margin-bottom: 15px;
	}
	.section_message_slide .slide_box .txt .name {
		font-size: 19px;
		font-size: 1.9rem;
	}
	
	
	.contents {
		padding: 0 20px;
	}
	.section1 .contents {
		padding: 40px 20px 0;
	}
	.contents_movie {
		padding: 0 20px;
	}
	
	.section_inner {
		padding: 50px 0;
	}
	
	
	
	.section3 .flex_box.column2 {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		flex-direction: column;
	}
	.section3 .flex_box.column2 .flex_box_cont {
		width: 100%;
		margin-bottom: 30px;
		padding-right: 0;
	}
	.section3 .flex_box.column2 .pic {
		width: 100%;
		max-width: 460px;
		margin: 0 auto;
		padding-left: 0;
	}
	
	
	
	.faq_box .faq_q {
		padding: 20px 25px;
	}
	.faq_box .faq_q .icon_q {
		width: 50px;
		font-size: 36px;
		font-size: 3.6rem;
	}
	.faq_box .faq_q .q_txt {
		width: calc(100% - 90px);
		font-size: 16px;
		font-size: 1.6rem;
	}
	.faq_box .faq_q .icon_plus-minus {
		width: 24px;
		height: 24px;
	}
	.faq_box .faq_q .icon_plus-minus:before, .faq_box .faq_q .icon_plus-minus:after {
		width: 20px;
		height: 4px;
	}
	.faq_box .faq_q.open .icon_plus-minus {
		width: 20px;
		height: 4px;
	}
	.faq_box .faq_a {
		padding: 20px 2em;
	}
	
	
	.section_movie .flex_box.column2 {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		flex-direction: column;
	}
	.section_movie .flex_box.column2 .primary_ttl {
		width: 100%;
		padding-right: 0;
	}
	.section_movie .flex_box.column2 .movie {
		width: 100%;
		max-width: 520px;
		margin: 0 auto;
		padding-top: 0;
	}
	.section_movie .flex_box.column2 .movie .iframe {
		margin-bottom: 40px;
	}
	.section_movie .pic {
		max-width: 460px;
		margin: 50px auto 0;
		padding: 0 20px;
	}
	.section_movie .btn {
		padding: 0 20px;
	}
	
	.section_inquiry .inquiry_box.flex_box {
		-webkit-box-orient: vertical;
		-webkit-box-direction: reverse;
		flex-direction: column-reverse;
		-webkit-box-pack: center;
		justify-content: center;
		padding: 0 20px;
	}
	.section_inquiry .inquiry_box.flex_box .pic {
		width: 100%;
		max-width: 460px;
		margin: 0 auto;
		padding: 0 20px;
		text-align: center;
	}
	.section_inquiry .inquiry_box.flex_box .btn {
		width: 100%;
		padding: 0 20px;
		margin-bottom: 50px;
	}
	
	
	.curriculum_cont {
		padding: 0 0 50px;
	}
	
	
	
	
}





/* -------------------------------------------------------
画面サイズ640pxまで
------------------------------------------------------- */

@media screen and (max-width:640px) {
	
	header .logo .txt1 {
		display: block;
		padding-bottom: 5px;
		font-size: 22px;
		font-size: 2.2rem;
	}
	header .logo .txt2 {
		display: block;
		font-size: 18px;
		font-size: 1.8rem;
	}
	 header .btn {
		width: 160px;
	}
	
	
	.footer_inner {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		flex-direction: column;
	}
	.footer_logo {
		width: 100%;
		margin-bottom: 20px;
	}
	.footer_logo .txt1 {
		display: block;
		padding-bottom: 5px;
		font-size: 22px;
		font-size: 2.2rem;
	}
	.footer_logo .txt2 {
		display: block;
		font-size: 18px;
		font-size: 1.8rem;
	}
	
	.page_nav ul li a {
		font-size: 13px;
		font-size: 1.3rem;
	}
	
	
	
}





/* -------------------------------------------------------
画面サイズ568pxまで
------------------------------------------------------- */

@media screen and (max-width:568px) {
	
	header .logo .txt1 {
		font-size: 20px;
		font-size: 2.0rem;
	}
	header .logo .txt2 {
		font-size: 16px;
		font-size: 1.6rem;
	}
	
	
	.footer_logo .txt1 {
		font-size: 20px;
		font-size: 2.0rem;
	}
	.footer_logo .txt2 {
		font-size: 16px;
		font-size: 1.6rem;
	}
	
	
	
	.page_nav ul.flex_box {
		flex-wrap: wrap;
	}
	.page_nav ul li {
		width: 33.33333%;
	}
	.page_nav ul li:nth-child(3):after {
		display: none;
	}
	.page_nav ul li a {
		height: 42px;
		padding: 0 5px;
		font-size: 12px;
		font-size: 1.2rem;
	}
	.page_nav ul li:nth-child(1) a, .page_nav ul li:nth-child(2) a, .page_nav ul li:nth-child(3) a {
		border-bottom: 1px solid#fff;
	}
	
	
	
}





/* -------------------------------------------------------
画面サイズ480pxまで
------------------------------------------------------- */

@media screen and (max-width:480px) {
	
	.wrapper {
		font-size: 14px;
		font-size: 1.4rem;
	}
	
	.fontss {
		font-size: 10px;
		font-size: 1.0rem;
	}
	.fonts {
		font-size: 12px;
		font-size: 1.2rem;
	}
	.fontl {
		font-size: 16px;
		font-size: 1.6rem;
	}
	.fontll {
		font-size: 18px;
		font-size: 1.8rem;
	}
	
	
	.header_inner {
		padding: 10px 20px 15px;
		font-size: 23px;
		font-size: 2.3rem;
	}
	header .logo {
		width: calc(100% - 130px);
	}
	header .logo .txt1 {
		padding-bottom: 3px;
		font-size: 17px;
		font-size: 1.7rem;
	}
	header .logo .txt2 {
		display: block;
		font-size: 12px;
		font-size: 1.2rem;
	}
	header .btn {
		width: 120px;
	}
	header .btn a {
	 	padding: 12px 10px;
		font-size: 13px;
		font-size: 1.3rem;
	}
	
	
	.breadcrumb {
		padding: 0 20px 40px;
	}
	ul.breadcrumb_list li {
		padding-right: 18px;
		font-size: 11px;
		font-size: 1.1rem;
	}
	ul.breadcrumb_list li:after {
		right: 6px;
		width: 4px;
		height: 4px;
	}
	
	
	.section_ttl span.ttl_txt {
		padding: 30px 20px 35px;
		font-size: 27px;
		font-size: 2.7rem;
	}
	.section_ttl span.ttl_txt .eng {
		margin-bottom: 5px;
		font-size: 17px;
		font-size: 1.7rem;
	}
	
	.primary_ttl {
		margin-bottom: 40px;
		font-size: 27px;
		font-size: 2.7rem;
	}
	.primary_ttl .eng {
		font-size: 17px;
		font-size: 1.7rem;
	}
	
	.sub_ttl {
		margin-bottom: 20px;
		font-size: 23px;
		font-size: 2.3rem;
	}
	.section_message .sub_ttl, .section_faq .sub_ttl {
		margin-bottom: 40px;
		font-size: 27px;
		font-size: 2.7rem;
	}
	
	
	.section1 .contents .box .btn.mt {
		margin: 40px auto 0;
	}
	.btn a {
		padding: 18px 35px 18px 20px;
	}
	
	.section.section_faq {
		padding: 60px 0 80px;
	}
	
	
	.mainvisual {
		margin-bottom: 30px;
	}
	.mainvisual .pc {
		display: none;
	}
	.mainvisual .sp {
		display: block;
	}
	
	.top_txt {
		padding: 0 20px 35px;
		font-size: 16px;
		font-size: 1.6rem;
	}
	
	
	.box_ttl {
		margin-bottom: 20px;
		padding-left: 14px;
		font-size: 18px;
		font-size: 1.8rem;
	}
	.box_ttl:before {
		top: 15%;
		left: 0;
		width: 4px;
		height: 18px;
	}
	.box_ttl .fonts {
		font-size: 15px;
		font-size: 1.5rem;
	}
	
	.box3_ttl {
		margin-bottom: 12px;
		padding-bottom: 6px;
		line-height: 1.5;
		font-size: 18px;
		font-size: 1.8rem;
	}
	
	.box_sub_ttl {
		margin-bottom: 10px;
		font-size: 18px;
		font-size: 1.8rem;
	}
	
	
	.section3 ul.flex_box.column3 li {
		padding: 15px 15px 20px;
	}
	ul.flex_box.column3 li .txt {
		font-size: 16px;
		font-size: 1.6rem;
	}
	ul.flex_box.column3 li .txt .disp_blk.fonts {
		font-size: 14px;
		font-size: 1.4rem;
	}
	
	
	.section1 ul.flex_box.column4 li .pic {
		margin: 0 auto 20px;
	}
	
	
	.section_message_slide .slide_box .txt .name {
		font-size: 16px;
		font-size: 1.6rem;
	}
	
	
	.faq_box .faq_q {
		padding: 16px 15px;
	}
	.faq_box .faq_q .icon_q {
		width: 40px;
		font-size: 30px;
		font-size: 3.0rem;
	}
	.faq_box .faq_q .q_txt {
		width: calc(100% - 80px);
		font-size: 16px;
		font-size: 1.6rem;
	}
	.faq_box .faq_q .icon_plus-minus {
		width: 22px;
		height: 22px;
	}
	.faq_box .faq_q .icon_plus-minus:before, .faq_box .faq_q .icon_plus-minus:after {
		top: 12px;
		width: 18px;
		height: 4px;
	}
	.faq_box .faq_q.open .icon_plus-minus {
		width: 18px;
		height: 4px;
	}
	.faq_box .faq_a {
		padding: 16px 1.5em;
	}
	
	
	.section_inquiry .inquiry_box.flex_box .btn {
		padding: 0 10px;
	}
	
	
	
}





/* -------------------------------------------------------
画面サイズ360pxまで
------------------------------------------------------- */

@media screen and (max-width:393px) {
	
	
	
	
}





/* -------------------------------------------------------
画面サイズ320pxまで
------------------------------------------------------- */

@media screen and (max-width:320px) {
	
	.section_movie .btn {
		padding: 0 10px;
	}
	
	
	
}





/* -------------------------------------------------------
各種マージン・パディング
------------------------------------------------------- */

.mt0 {margin-top: 0!important;}
.mt5 {margin-top: 5px!important;}
.mt10 {margin-top: 10px!important;}
.mt15 {margin-top: 15px!important;}
.mt20 {margin-top: 20px!important;}
.mt25 {margin-top: 25px!important;}
.mt30 {margin-top: 30px!important;}
.mt35 {margin-top: 35px!important;}
.mt40 {margin-top: 40px!important;}
.mt45 {margin-top: 45px!important;}
.mt50 {margin-top: 50px!important;}

.mr0 {margin-right: 0!important;}
.mr5 {margin-right: 5px!important;}
.mr10 {margin-right: 10px!important;}
.mr15 {margin-right: 15px!important;}
.mr20 {margin-right: 20px!important;}
.mr25 {margin-right: 25px!important;}
.mr30 {margin-right: 30px!important;}
.mr35 {margin-right: 35px!important;}
.mr40 {margin-right: 40px!important;}
.mr45 {margin-right: 45px!important;}
.mr50 {margin-right: 50px!important;}

.mb0 {margin-bottom: 0!important;}
.mb5 {margin-bottom: 5px!important;}
.mb10 {margin-bottom: 10px!important;}
.mb15 {margin-bottom: 15px!important;}
.mb20 {margin-bottom: 20px!important;}
.mb25 {margin-bottom: 25px!important;}
.mb30 {margin-bottom: 30px!important;}
.mb35 {margin-bottom: 35px!important;}
.mb40 {margin-bottom: 40px!important;}
.mb45 {margin-bottom: 45px!important;}
.mb50 {margin-bottom: 50px!important;}

.ml0 {margin-left: 0!important;}
.ml5 {margin-left: 5px!important;}
.ml10 {margin-left: 10px!important;}
.ml15 {margin-left: 15px!important;}
.ml20 {margin-left: 20px!important;}
.ml25 {margin-left: 25px!important;}
.ml30 {margin-left: 30px!important;}
.ml35 {margin-left: 35px!important;}
.ml40 {margin-left: 40px!important;}
.ml45 {margin-left: 45px!important;}
.ml50 {margin-left: 50px!important;}

.mrhem {margin-right: 0.5em!important;}
.mr1em {margin-right: 1em!important;}
.mr1hem {margin-right: 1.5em!important;}
.mr2em {margin-right: 2em!important;}
.mr2hem {margin-right: 2.5em!important;}
.mr3em {margin-right: 3em!important;}

.mlhem {margin-left: 0.5em!important;}
.ml1em {margin-left: 1em!important;}
.ml1hem {margin-left: 1.5em!important;}
.ml2em {margin-left: 2em!important;}
.ml2hem {margin-left: 2.5em!important;}
.ml3em {margin-left: 3em!important;}

.pt0 {padding-top: 0!important;}
.pt5 {padding-top: 5px!important;}
.pt10 {padding-top: 10px!important;}
.pt15 {padding-top: 15px!important;}
.pt20 {padding-top: 20px!important;}
.pt25 {padding-top: 25px!important;}
.pt30 {padding-top: 30px!important;}
.pt35 {padding-top: 35px!important;}
.pt40 {padding-top: 40px!important;}
.pt45 {padding-top: 45px!important;}
.pt50 {padding-top: 50px!important;}

.pr0 {padding-right: 0!important;}
.pr5 {padding-right: 5px!important;}
.pr10 {padding-right: 10px!important;}
.pr15 {padding-right: 15px!important;}
.pr20 {padding-right: 20px!important;}
.pr25 {padding-right: 25px!important;}
.pr30 {padding-right: 30px!important;}
.pr35 {padding-right: 35px!important;}
.pr40 {padding-right: 40px!important;}
.pr45 {padding-right: 45px!important;}
.pr50 {padding-right: 50px!important;}

.pb0 {padding-bottom: 0!important;}
.pb5 {padding-bottom: 5px!important;}
.pb10 {padding-bottom: 10px!important;}
.pb15 {padding-bottom: 15px!important;}
.pb20 {padding-bottom: 20px!important;}
.pb25 {padding-bottom: 25px!important;}
.pb30 {padding-bottom: 30px!important;}
.pb35 {padding-bottom: 35px!important;}
.pb40 {padding-bottom: 40px!important;}
.pb45 {padding-bottom: 45px!important;}
.pb50 {padding-bottom: 50px!important;}

.pl0 {padding-left: 0!important;}
.pl5 {padding-left: 5px!important;}
.pl10 {padding-left: 10px!important;}
.pl15 {padding-left: 15px!important;}
.pl20 {padding-left: 20px!important;}
.pl25 {padding-left: 25px!important;}
.pl30 {padding-left: 30px!important;}
.pl35 {padding-left: 35px!important;}
.pl40 {padding-left: 40px!important;}
.pl45 {padding-left: 45px!important;}
.pl50 {padding-left: 50px!important;}

