@charset "UTF-8";
html, body, div, span, h1, h2, h3, h4, h5, h6, p, del, em, img, small, strong, sub, sup, b, i, dl, dt, dd, ol, ul, li, table, caption, tbody, tfoot, thead, tr, th, td, footer, header, menu, nav, section, figure, form, input, select, textarea {
		margin: 0;
		padding: 0;
		border: 0;
		outline: 0;
		font-size: 100%;
		font-weight: normal;
		font-style: normal;
		vertical-align: baseline;
		background: transparent;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
}

body {
		line-height: 1;
}

footer, header, nav, section {
		display: block;
}

nav ul, nav ol {
		list-style: none;
}

nav a, .nav a {
		display: block;
}

a {
		margin: 0;
		padding: 0;
		border: 0;
		font-size: 100%;
		vertical-align: baseline;
		background: transparent;
}

table {
		border-collapse: collapse;
		border-spacing: 0;
}

hr {
		display: block;
		height: 1px;
		border: 0;
		border-top: 1px solid #ccc;
		margin: 1em 0;
		padding: 0;
}

strong {
		font-weight: bold;
}

img {
		display: block;
		max-width: 100%;
}

html {
		position: relative;
		min-height: 100%;
		height: 100%;
		overflow-y: scroll;
}

body {
		height: 100%;
		color: #000;
		background: #FFF;
}

html, body, button, input, select, textarea {
		color: #000;
		font: normal 15px/1.8 'Verdana','Hiragino Kaku Gothic ProN','游ゴシック', 'YuGothic','メイリオ','Meiryo',sans-serif;
}

a {
		color: #34AC37;
		outline: none;
		text-decoration: none;
}

a:hover, a:focus, a:active {
		color: #69A644;
		outline: none;
}

.eng, #simple-ft .school-info .address-box h2,
#simple-ft .school-info .sns-box h2 {
		font-family: 'Roboto Condensed', sans-serif;
}

h1, h2, h3, h4 {
		line-height: 1.1;
}

h2.eng, #simple-ft .school-info .address-box h2,
#simple-ft .school-info .sns-box h2 {
		margin: 40px 0 0 0;
		color: #69A644;
		font-size: 50px;
		font-weight: 700;
}

h3.eng {
		color: #231815;
		font-size: 30px;
		font-weight: 700;
}

.mds-title {
		display: inline-block;
		margin: 30px 0 20px 0;
		padding: 0 7px 5px 7px;
		font-size: 1.1rem;
		font-weight: bold;
		border-bottom: 3px solid #231815;
}

@media screen and (min-width: 1025px) {
		.mds-title {
				margin: 50px 0 30px 0;
				font-size: 1.5rem;
		}
}

h5 {
		font-size: 1.06rem;
		font-weight: normal;
		line-height: 1.4;
}

@media screen and (min-width: 1025px) {
		h5 {
				font-size: 1.3rem;
				line-height: 1.3;
		}
}

@media screen and (max-width: 544px) {
		br.pc {
				display: none;
		}
}

@media screen and (min-width: 1025px) {
		br.sp {
				display: none;
		}
}

.well {
		padding: 10px 15px;
		border: 1px solid #DEDEDE;
		border-radius: 5px;
}

@media screen and (min-width: 1025px) {
		.well {
				padding: 20px 30px;
		}
}

/* Base Layout */
body#fixed-head {
		padding-top: 65px;
}

@media screen and (min-width: 1025px) {
		body#fixed-head {
				padding-top: 90px;
		}
}

@media screen and (min-width: 1025px) {
		body#fixed-head .wrap {
				margin-top: -90px;
				padding-top: 90px;
		}
}

/* Header */
header#main-header {
		width: 100%;
		height: 60px;
		background: #FFF;
		border-bottom: 1px solid #999;
		position: relative;
		overflow: hidden;
}

header#main-header #hd-logo {
		width: auto;
		height: 40px;
		position: absolute;
		top: 10px;
		left: 0.5rem;
}

@media screen and (min-width: 1025px) {
		header#main-header #hd-logo {
				left: 30px;
		}
}

header#main-header #hd-logo-tight {
		width: auto;
		height: 40px;
}

header#main-header #panel-btn {
		display: inline-block;
		position: relative;
		width: 40px;
		height: 40px;
		float: right;
		border-radius: 50%;
		background: #231815;
		z-index: 999;
		margin: 10px 10px 0 auto;
}

@media screen and (min-width: 1025px) {
		header#main-header #panel-btn {
				margin: 10px 15px 0 auto;
		}
}

header#main-header #panel-btn:focus, header#main-header #panel-btn:hover {
		background: rgba(35, 24, 21, 0.7);
}

header#main-header #panel-btn span {
		display: block;
		position: absolute;
		top: 50%;
		left: 50%;
		width: 14px;
		height: 2px;
		margin: -1px 0 0 -7px;
		background: #FFF;
		transition: .2s;
}

header#main-header #panel-btn span::before, header#main-header #panel-btn span::after {
		display: block;
		content: "";
		position: absolute;
		top: 50%;
		left: 0;
		width: 14px;
		height: 2px;
		background: #FFF;
		transition: .3s;
}

header#main-header #panel-btn span::before {
		margin-top: -6px;
}

header#main-header #panel-btn span::after {
		margin-top: 4px;
}

header#main-header #panel-btn span.close {
		background: transparent;
}

header#main-header #panel-btn span.close::before, header#main-header #panel-btn span.close::after {
		margin-top: 0;
}

header#main-header #panel-btn span.close::before {
		transform: rotate(-45deg);
}

header#main-header #panel-btn span.close::after {
		transform: rotate(-135deg);
}

header#main-header #panel-btn.close {
		background: #69A644;
}

header#main-header #panel-btn.close span {
		background: transparent;
}

header#main-header #panel-btn.close span::before, header#main-header #panel-btn.close span::after {
		margin-top: 0;
}

header#main-header #panel-btn.close span::before {
		transform: rotate(-45deg);
}

header#main-header #panel-btn.close span::after {
		transform: rotate(-135deg);
}

#panel {
		width: 100%;
		height: 100%;
		position: fixed;
		top: 0;
		right: -100%;
		padding: 40px 70px 0 0;
		color: #FFF;
		background: #231815;
		z-index: 998;
}

@media screen and (min-width: 1025px) {
		#panel {
				width: 400px;
				right: -400px;
		}
}

#panel ul li a {
		display: block;
		color: #FFF;
		background: #231815;
		transition: .3s;
		cursor: pointer;
		padding: 7px 15px;
}

#panel ul li a:focus, #panel ul li a:hover {
		color: #FFF;
		background: #C1402D;
}

#panel ul li ul li a {
		padding-left: 30px;
}

/* Main */
#status {
		padding: 1px 0;
		color: #FFF;
		background: #231815;
}

@media screen and (min-width: 1025px) {
		#status {
				padding: 5px 0;
		}
}

#status span {
		font-size: 1rem;
		line-height: 1;
}

@media screen and (min-width: 1025px) {
		#status span {
				font-size: 1.2rem;
		}
}

#kasou-hero {
		padding: 10px 0;
		background: #69A644;
}

@media screen and (min-width: 1025px) {
		#kasou-hero {
				padding: 40px 0;
		}
}

#kasou-hero h1 {
		margin: 0;
		color: #FFF;
		font-size: 1.4rem;
		font-family: 'Noto Sans JP', sans-serif;
		font-style: normal;
		font-weight: 700;
}

@media screen and (min-width: 1025px) {
		#kasou-hero h1 {
				font-size: 1.9rem;
		}
}

#kasou-hero h1.eng {
		font-size: 1.7rem;
		font-weight: 700;
}

@media screen and (min-width: 1025px) {
		#kasou-hero h1.eng {
				font-size: 3rem;
		}
}

.page-nav {
		margin: 40px 0;
}

@media screen and (min-width: 1025px) {
		.page-nav {
				text-align: right;
		}
}

.page-nav li {
		list-style: none;
}

@media screen and (min-width: 1025px) {
		.page-nav li {
				display: inline-block;
				margin-right: 20px;
		}
}

.page-nav li a {
		color: #231815;
}

.page-nav li a:focus, .page-nav li a:hover {
		text-decoration: underline;
}

.side-bar {
		padding: 0;
		background: #EEE;
}

.side-bar ul li a {
		padding: 10px 5px 10px 15px;
		display: block;
		color: #000;
		background: #EEE;
		transition: .3s;
		cursor: pointer;
}

.side-bar ul li a:focus, .side-bar ul li a:hover {
		color: #000;
		background: #999;
}

.side-bar ul li a:hover {
		color: #FFF;
}

.side-bar ul li a::before {
		color: #69A644;
}

@media screen and (min-width: 1025px) {
		.wide-md {
				width: 80%;
				margin-right: auto;
				margin-left: auto;
		}
}

/* Footer */
#other-nav {
		background: #69A644;
}

#other-nav ul li {
		display: inline-block;
}

#other-nav ul li a {
		display: block;
		color: #FFF;
		background: transparent;
		transition: .3s;
		cursor: pointer;
		padding: 10px 20px 10px 10px;
}

#other-nav ul li a:focus, #other-nav ul li a:hover {
		color: #FFF;
		background: #231815;
}

.ft-share {
		padding: 10px 0;
		background: #231815;
}

.ft-share .container {
		height: auto;
}

.ft-share .container .sns_box {
		min-width: 268px;
		height: 24px;
		overflow: hidden;
}

@media screen and (min-width: 1025px) {
		.ft-share .container .sns_box {
				height: 38px;
		}
}

.ft-share .container .sns_box .sns_button {
		float: left;
		box-shadow: inset 0 0 0 2px #fff;
		border-radius: 100%;
		transition: all 280ms ease;
}

.ft-share .container .sns_box .sns_button a {
		display: block;
		width: 24px;
		height: 24px;
		color: #fff;
		text-align: center;
		line-height: 24px;
		transition: all 280ms ease;
}

@media screen and (min-width: 1025px) {
		.ft-share .container .sns_box .sns_button a {
				width: 38px;
				height: 38px;
				line-height: 38px;
		}
}

.ft-share .container .sns_box .sns_button a i {
		font-size: 12px;
		line-height: 24px;
		vertical-align: middle;
}

@media screen and (min-width: 1025px) {
		.ft-share .container .sns_box .sns_button a i {
				font-size: 18px;
				line-height: 38px;
		}
}

.ft-share .container .sns_box .sns_button:hover {
		box-shadow: inset 0 0 0 22px #fff;
}

.ft-share .container .sns_box .sns_button + .sns_button {
		margin: 0 0 0 20px;
}

.ft-share .container .sns_box .twitter:hover a {
		color: #1B95E0;
}

.ft-share .container .sns_box .facebook:hover a {
		color: #3B5999;
}

.ft-share .container .sns_box .google:hover a {
		color: #dd4b39;
}

.ft-share .container .sns_box .instagram:hover a {
		color: #2b5c84;
}

.ft-share .container .sns_box .pocket:hover a {
		color: #EE4056;
}

.site-detail {
		width: 100%;
		padding: 10px 5px;
		background: #EFEFEE;
		overflow: hidden;
		position: relative;
}

@media screen and (min-width: 1025px) {
		.site-detail {
				padding: 30px;
		}
}

.site-detail .school-info {
		width: 100%;
		margin-bottom: 20px;
}

@media screen and (min-width: 1025px) {
		.site-detail .school-info {
				width: 40%;
				float: left;
		}
}

.site-detail .school-info h1 {
		margin: 10px 0;
		font-size: 1.4rem;
		font-weight: bold;
		line-height: 1.5;
}

@media screen and (min-width: 1025px) {
		.site-detail .school-info h1 {
				font-size: 24px;
		}
}

.site-detail .school-info h1 span {
		font-size: 18px;
}

.site-detail .school-info .access-info {
		display: inline-block;
		overflow: hidden;
}

.site-detail .school-info .access-info p {
		margin-right: 50px;
		white-space: nowrap;
}

.site-detail .school-info .access-info .go-accessmap {
		display: block;
		float: right;
		margin-left: 20px;
}

.site-detail .school-info .access-info .go-accessmap::before {
		display: block;
		margin: 0 0 5px 0;
		content: "\f041";
		font-family: FontAwesome;
		color: #69A644;
		font-size: 40px;
		transition: .3s;
}

.site-detail .school-info .access-info .go-accessmap:hover::before {
		margin: 5px 0 0 0;
		color: #231815;
}

.site-detail .school-info .tel,
.site-detail .school-info .tel a {
		color: #69A644;
		font-size: 1.4rem;
		font-weight: bold;
}

@media screen and (min-width: 1025px) {
		.site-detail .school-info .tel,
		.site-detail .school-info .tel a {
				font-size: 24px;
		}
}

.site-detail .school-info .open-time {
		padding-left: 10px;
		border-left: 5px solid rgba(105, 166, 68, 0.5);
}

.site-detail .school-info .ft-nav-btn {
		margin-top: 20px;
}

.site-detail .school-info .ft-nav-btn li {
		display: inline-block;
}

.site-detail .school-info .ft-nav-btn li a {
		display: block;
		color: #FFF;
		background: #69A644;
		transition: .3s;
		cursor: pointer;
		display: inline-block;
		margin: 20px 20px 0 0;
		padding: 1px 10px;
		font-size: 1rem;
		font-weight: normal;
		border: 1px solid #69A644;
		border-radius: 3px;
}

.site-detail .school-info .ft-nav-btn li a:focus, .site-detail .school-info .ft-nav-btn li a:hover {
		color: #FFF;
		background: #231815;
}

.site-detail .school-info .ft-nav-btn li a:focus, .site-detail .school-info .ft-nav-btn li a:hover {
		border-color: #231815;
}

.site-detail .fb-area {
		width: 100%;
		margin-bottom: 20px;
}

@media screen and (min-width: 1025px) {
		.site-detail .fb-area {
				width: 50%;
				float: right;
		}
}

.site-detail .fb-area .fb-page {
		width: 240px !important;
}

@media screen and (min-width: 1025px) {
		.site-detail .fb-area .fb-page {
				width: 100% !important;
				height: 350px;
		}
}

#simple-ft .school-info {
		overflow: hidden;
}

@media screen and (min-width: 1025px) {
		#simple-ft .school-info {
				width: 100%;
				float: none;
		}
}

@media screen and (min-width: 1025px) {
		#simple-ft .school-info h1 {
				width: 30%;
				float: left;
				margin-right: 3%;
		}
}

#simple-ft .school-info h1 span {
		font-size: 14px;
}

@media screen and (min-width: 1025px) {
		#simple-ft .school-info h1 span {
				font-size: 16px;
		}
}

#simple-ft .school-info .address-box,
#simple-ft .school-info .sns-box {
		margin: 40px 0;
}

@media screen and (min-width: 1025px) {
		#simple-ft .school-info .address-box,
		#simple-ft .school-info .sns-box {
				width: 30%;
				float: left;
				margin: 0 3% 0 0;
		}
}

#simple-ft .school-info .address-box h2,
#simple-ft .school-info .sns-box h2 {
		margin: 0 0 10px 0;
		padding: 0 0 3px 0;
		color: #000;
		font-size: 1.2rem;
		border-bottom: 1px solid #000;
}

#simple-ft .school-info .access-info {
		display: inline-block;
		overflow: hidden;
}

#simple-ft .school-info .access-info p {
		margin-right: 50px;
		white-space: nowrap;
}

#simple-ft .school-info .access-info .go-accessmap {
		display: block;
		float: right;
		margin-left: 20px;
}

#simple-ft .school-info .access-info .go-accessmap::before {
		display: block;
		margin: 0 0 5px 0;
		content: "\f041";
		font-family: FontAwesome;
		color: #69A644;
		font-size: 40px;
		transition: .3s;
}

#simple-ft .school-info .access-info .go-accessmap:hover::before {
		margin: 5px 0 0 0;
		color: #231815;
}

#simple-ft .school-info .tel,
#simple-ft .school-info .tel a {
		color: #69A644;
		font-size: 1.4rem;
		font-weight: bold;
}

@media screen and (min-width: 1025px) {
		#simple-ft .school-info .tel,
		#simple-ft .school-info .tel a {
				font-size: 24px;
		}
}

#simple-ft .school-info .open-time {
		padding-left: 10px;
		border-left: 5px solid rgba(105, 166, 68, 0.5);
}

#simple-ft .school-info .ft-nav-btn {
		margin-top: 20px;
}

#simple-ft .school-info .ft-nav-btn li {
		display: inline-block;
}

#simple-ft .school-info .ft-nav-btn li a {
		display: block;
		color: #FFF;
		background: #69A644;
		transition: .3s;
		cursor: pointer;
		display: inline-block;
		margin: 20px 20px 0 0;
		padding: 1px 10px;
		font-size: 1rem;
		font-weight: normal;
		border: 1px solid #69A644;
		border-radius: 3px;
}

#simple-ft .school-info .ft-nav-btn li a:focus, #simple-ft .school-info .ft-nav-btn li a:hover {
		color: #FFF;
		background: #231815;
}

#simple-ft .school-info .ft-nav-btn li a:focus, #simple-ft .school-info .ft-nav-btn li a:hover {
		border-color: #231815;
}

#pagetop {
		width: 100%;
		position: absolute;
		bottom: 0;
		left: 0;
		z-index: 997;
}

@media screen and (min-width: 1025px) {
		#pagetop {
				width: auto;
				display: inline-block;
				position: fixed;
				right: 0;
				left: auto;
				bottom: 61px;
				z-index: 997;
		}
}

#pagetop a {
		display: block;
		color: #FFF;
		background: #231815;
		transition: .3s;
		cursor: pointer;
		margin: 0;
		padding: 5px 30px 5px 20px;
		font-size: 0.9rem;
		text-align: center;
}

#pagetop a:focus, #pagetop a:hover {
		color: #FFF;
		background: #C1402D;
}

#pagetop a::before {
		padding-right: 1rem;
		content: "\f0d8";
		font-family: FontAwesome;
}

#copyright {
		margin: 20px 0;
		color: rgba(0, 0, 0, 0.7);
		font-size: .8rem;
		text-align: center;
}

.eng-ft-copy {
		z-index: 800;
}

@media screen and (min-width: 1025px) {
		.eng-ft-copy {
				margin: 17px 0;
				display: flex;
				flex-direction: row-reverse;
				justify-content: space-between;
		}
}

.eng-ft-copy .copyright {
		padding-left: 10px;
		color: rgba(0, 0, 0, 0.7);
		font-size: .8rem;
}

@media screen and (max-width: 1025px) {
		.eng-ft-copy .copyright {
				padding-top: 5px;
				padding-bottom: 5px;
				border-top: 1px solid #DEDEDE;
		}
}

@media screen and (max-width: 1025px) {
		.eng-ft-copy .eng-tail-nav {
				margin: 5px;
		}
}

.eng-ft-copy .eng-tail-nav li {
		display: inline-block;
		margin: 3px 0 3px -1px;
		padding: 0 5px;
		border-right: 1px solid #DEDEDE;
		border-left: 1px solid #DEDEDE;
}

@media screen and (min-width: 1025px) {
		.eng-ft-copy .eng-tail-nav li {
				margin: 0 0 0 -1px;
				padding: 0 10px;
		}
}

.eng-ft-copy .eng-tail-nav li a {
		color: #000;
		font-size: .85rem;
		border-bottom: 1px solid transparent;
		transition: .3s;
}

.eng-ft-copy .eng-tail-nav li a:focus, .eng-ft-copy .eng-tail-nav li a:hover {
		border-color: #000;
}

.swiper-container {
		width: 100%;
		height: 60vh;
		position: relative;
		border-bottom: 1px solid #444;
}

@media screen and (min-width: 768px) {
		.swiper-container {
				height: 700px;
		}
}

.swiper-container .parallax-bg {
		position: absolute;
		left: 0;
		top: 0;
		width: 130%;
		height: 100%;
		-webkit-background-size: cover;
		background-size: cover;
		background-position: center;
}

.swiper-container .swiper-slide {
		padding-top: 30vh;
		background-position: center;
		background-repeat: no-repeat;
		background-size: cover;
		text-align: center;
		position: relative;
}

@media screen and (min-width: 768px) {
		.swiper-container .swiper-slide {
				padding-top: 350px;
		}
}

.swiper-container .swiper-slide.slide01 {
		background-image: url(../images/top_slide_01.jpg);
}

.swiper-container .swiper-slide.slide02 {
		background-image: url(../images/top_slide_02.jpg);
}

.swiper-container .swiper-slide.slide03 {
		background-image: url(../images/top_slide_04.jpg);
}

.swiper-container .swiper-slide.slide04 {
		background-image: url(../images/top_slide_05.jpg);
}

.swiper-container .swiper-slide.slide05 {
		background-image: url(../images/top_slide_06.jpg);
}

.swiper-container .swiper-slide .title {
		display: block;
		width: 50%;
		height: auto;
		margin: -20px auto 0 auto;
}

@media screen and (min-width: 768px) {
		.swiper-container .swiper-slide .title {
				width: 470px;
				height: 200px;
				margin: -100px auto 0 auto;
		}
}

.swiper-container .swiper-slide.swiper-slide-active .title {
		-webkit-animation: inout 2s;
		-moz-animation: inout 2s;
		animation: inout 2s;
}

@-webkit-keyframes inout {
		0% {
				-webkit-transform: scale(1.5);
				opacity: 0;
		}
		100% {
				-webkit-transform: scale(1);
				opacity: 1;
		}
}

@-moz-keyframes inout {
		0% {
				-moz-transform: scale(1.5);
				opacity: 0;
		}
		100% {
				-moz-transform: scale(1);
				opacity: 1;
		}
}

@keyframes inout {
		0% {
				transform: scale(1.5);
				opacity: 0;
		}
		100% {
				transform: scale(1);
				opacity: 1;
		}
}

.swiper-button-next, .swiper-button-prev {
		margin-top: -22px;
		-webkit-filter: hue-rotate(180deg);
		-moz-filter: hue-rotate(180deg);
		-o-filter: hue-rotate(180deg);
		-ms-filter: hue-rotate(180deg);
		filter: hue-rotate(180deg);
}

@media screen and (max-width: 768px) {
		.swiper-button-next, .swiper-button-prev {
				width: 13px;
				height: 22px;
				background-size: 13px 22px;
		}
}

#top-main-nav {
		height: 50px;
		background: #231815;
}

#top-main-nav ul {
		width: 100%;
		display: table;
}

#top-main-nav ul li {
		display: table-cell;
		width: 50%;
}

#top-main-nav ul li a {
		height: 50px;
		display: block;
		color: #FFF;
		background: #231815;
		transition: .3s;
		cursor: pointer;
		padding: 0;
		font-size: 1.2rem;
		text-align: center;
		line-height: 50px;
		border-right: 1px solid rgba(255, 255, 255, 0.3);
		border-left: 1px solid rgba(255, 255, 255, 0.3);
}

#top-main-nav ul li a:focus, #top-main-nav ul li a:hover {
		color: #FFF;
		background: #C1402D;
}

@media screen and (max-width: 768px) {
		#top-main-nav ul li a {
				font-size: 3.5vmin;
		}
}

#top-aboutus {
		padding-bottom: 50px;
}

#top-aboutus h1 {
		margin: 60px 0;
		color: #69A644;
		font-size: 1.4rem;
		font-weight: bold;
		text-align: center;
}

div#top-alert {
}
#top-alert > div {
		text-align: center;
		margin: 10px 0 10px 0;
    color: #ff1a1a;
    border: 2px solid #ff1a1a;
    background: #ffe8e8;
    padding: 6px 8px;
    font-weight: bold;
    font-size: 105%;
}

@media screen and (min-width: 768px) {
		#top-aboutus h1 {
				font-size: 1.6rem;
		}
}

#top-aboutus h1 .eng, #top-aboutus h1 #simple-ft .school-info .address-box h2, #simple-ft .school-info .address-box #top-aboutus h1 h2, #top-aboutus h1
#simple-ft .school-info .sns-box h2,
#simple-ft .school-info .sns-box #top-aboutus h1 h2 {
		font-size: 1.6rem;
}

@media screen and (min-width: 768px) {
		#top-aboutus h1 .eng, #top-aboutus h1 #simple-ft .school-info .address-box h2, #simple-ft .school-info .address-box #top-aboutus h1 h2, #top-aboutus h1
		#simple-ft .school-info .sns-box h2,
		#simple-ft .school-info .sns-box #top-aboutus h1 h2 {
				font-size: 1.8rem;
		}
}

@media screen and (min-width: 768px) {
		#top-aboutus p {
				font-size: 1.12rem;
		}
}

#top-info {
		padding: 40px 0 80px 0;
		background: #DEDEDE;
		border-bottom: 1px solid #d1d1d1;
}

#top-info .eng.info-mds, #top-info #simple-ft .school-info .address-box h2.info-mds, #simple-ft .school-info .address-box #top-info h2.info-mds, #top-info
#simple-ft .school-info .sns-box h2.info-mds,
#simple-ft .school-info .sns-box #top-info h2.info-mds {
		margin: 40px 0 60px 0;
		color: #999;
		font-size: 2rem;
		text-align: center;
}

@media screen and (min-width: 768px) {
		#top-info .eng.info-mds, #top-info #simple-ft .school-info .address-box h2.info-mds, #simple-ft .school-info .address-box #top-info h2.info-mds, #top-info
		#simple-ft .school-info .sns-box h2.info-mds,
		#simple-ft .school-info .sns-box #top-info h2.info-mds {
				font-size: 3rem;
		}
}

#oshirase-area {
		margin: 0 auto;
}

@media screen and (min-width: 768px) {
		#oshirase-area {
				display: flex;
				justify-content: space-between;
		}
}

#oshirase-area .top-kyukou-box,
#oshirase-area .top-info-box {
		padding: 10px;
		background: #FFF;
		border-radius: 5px;
}

@media screen and (min-width: 768px) {
		#oshirase-area .top-kyukou-box,
		#oshirase-area .top-info-box {
				flex: 1;
		}
}

#oshirase-area .top-kyukou-box h3,
#oshirase-area .top-info-box h3 {
		margin-bottom: 10px;
		padding: 10px 0;
		font-size: 1.5rem;
		text-align: center;
		position: relative;
		overflow: hidden;
}

#oshirase-area .top-kyukou-box .none,
#oshirase-area .top-info-box .none {
		padding: 20px;
		color: #999;
		background: #FFF;
		text-align: center;
		border-radius: 5px;
}

#oshirase-area .top-kyukou-box {
		margin-bottom: 20px;
}

@media screen and (min-width: 768px) {
		#oshirase-area .top-kyukou-box {
				margin-right: 20px;
				margin-bottom: 0;
		}
}

#oshirase-area .top-kyukou-box h3 {
		border-bottom: 2px solid #C1402D;
}

@media screen and (min-width: 768px) {
		#oshirase-area .top-info-box {
				margin-left: 20px;
		}
}

#oshirase-area .top-info-box h3 {
		border-bottom: 2px solid #69A644;
}

#oshirase-area .news {
		border-bottom: 1px dotted #5E5E5E;
		margin-bottom: 10px;
		padding-bottom: 10px;
}

#oshirase-area .news:last-of-type {
		border-bottom: 0;
}

#oshirase-area .news .date {
		color: #34AC37;
		font-size: .85rem;
}

#oshirase-area .news p,
#oshirase-area .news a {
		padding: 10px 15px;
		background: #FFF;
}

#oshirase-area .news a {
		display: block;
		padding-right: 45px;
		color: #000;
		transition: .3s;
		position: relative;
}
#oshirase-area .news a.plain {
		display: inline;
		position: none;
		padding: 0;
		content: none;
		text-decoration: underline;
}
#oshirase-area .news a.notice {
		color: #C1402D;;
		font-weight: bold;
		font-size: 125%;
}

#oshirase-area .news a::after {
		width: 40px;
		height: 40px;
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		margin: auto 0;
		content: "\f105";
		font-family: FontAwesome;
		font-size: 30px;
		line-height: 40px;
		text-align: center;
}
#oshirase-area .news a.plain::after {
		content: none;
}

#oshirase-area .news a:focus, #oshirase-area .news a:hover {
		background: #d7eacc;
}
#eiken-table .row {
		padding: 3px 15px;
}
#eiken-table .row .col:nth-child(1){
		max-width: 100px;
}

#top-intro-class {
		padding: 40px 0;
		background: rgba(52, 172, 55, 0.7);
}

#top-intro-class .eng.intro-class-mds, #top-intro-class #simple-ft .school-info .address-box h2.intro-class-mds, #simple-ft .school-info .address-box #top-intro-class h2.intro-class-mds, #top-intro-class
#simple-ft .school-info .sns-box h2.intro-class-mds,
#simple-ft .school-info .sns-box #top-intro-class h2.intro-class-mds {
		margin: 40px 0;
		color: #FFF;
		font-size: 2rem;
		text-align: center;
}

@media screen and (min-width: 768px) {
		#top-intro-class .eng.intro-class-mds, #top-intro-class #simple-ft .school-info .address-box h2.intro-class-mds, #simple-ft .school-info .address-box #top-intro-class h2.intro-class-mds, #top-intro-class
		#simple-ft .school-info .sns-box h2.intro-class-mds,
		#simple-ft .school-info .sns-box #top-intro-class h2.intro-class-mds {
				font-size: 3rem;
		}
}

@media screen and (min-width: 768px) {
		#intro-class-area {
				display: flex;
				flex-wrap: wrap;
				justify-content: space-between;
		}
}

#intro-class-area a {
		display: block;
		max-width: 356px;
		margin: 20px auto;
		padding-top: 260px;
		color: #000;
		background: #FFF;
		transition: .3s;
}

@media screen and (min-width: 768px) {
		#intro-class-area a {
				flex: 1;
		}
}

#intro-class-area a:focus, #intro-class-area a:hover {
		box-shadow: 0 0 0 4px #28852a inset;
}

#intro-class-area a h3 {
		padding: 20px 10px;
		font-size: 1.4rem;
		font-weight: bold;
		text-align: center;
}

#intro-class-area a p {
		padding: 0 15px 10px 15px;
		font-size: .9rem;
}

#intro-class-area a.robot {
		background: url(../images/top-lesson-robot.png) no-repeat center 0 #FFF;
}

#intro-class-area a.kodomo {
		background: url(../images/top-lesson-eng.png) no-repeat center 0 #FFF;
}

#intro-class-area a.otona {
		background: url(../images/top-lesson-otona.png) no-repeat center 0 #FFF;
}

#top-team {
		padding: 40px 0;
		background: #e5f1de;
}

#top-team .eng.team-mds, #top-team #simple-ft .school-info .address-box h2.team-mds, #simple-ft .school-info .address-box #top-team h2.team-mds, #top-team
#simple-ft .school-info .sns-box h2.team-mds,
#simple-ft .school-info .sns-box #top-team h2.team-mds {
		margin: 40px 0;
		font-size: 2rem;
		text-align: center;
}

@media screen and (min-width: 768px) {
		#top-team .eng.team-mds, #top-team #simple-ft .school-info .address-box h2.team-mds, #simple-ft .school-info .address-box #top-team h2.team-mds, #top-team
		#simple-ft .school-info .sns-box h2.team-mds,
		#simple-ft .school-info .sns-box #top-team h2.team-mds {
				font-size: 3rem;
		}
}

#top-team .member {
		display: block;
}

@media screen and (min-width: 768px) {
		#top-team .member {
				display: flex;
				justify-content: space-between;
		}
}

#top-team .member .inn {
		width: 100%;
}

@media screen and (min-width: 768px) {
		#top-team .member .inn {
				width: 30%;
				margin: 0 10px;
				padding: 10px;
		}
}

#top-team .member .inn.fst {
		width: 100%;
}

@media screen and (min-width: 768px) {
		#top-team .member .inn.fst {
				width: 40%;
		}
}

#top-team .member .inn h3 {
		margin: 40px 0 20px 0;
		font-size: 1.3rem;
		text-align: center;
}

#top-team .member .inn h3 .position {
		display: block;
		color: #555;
		font-size: 1rem;
}

#top-team .member .inn p {
		font-size: .92rem;
}

#top-facility {
		padding: 40px 0 100px 0;
}

#top-facility h2 {
		margin: 40px 0;
		font-size: 2rem;
		text-align: center;
}

@media screen and (min-width: 1025px) {
		#leaders-message {
				padding-right: 40px;
		}
}

#leaders-message .leader-photo {
		width: 110px;
		height: auto;
		float: right;
		margin: 0 0 20px 20px;
		border: 3px solid #FFF;
		box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.5);
}

@media screen and (min-width: 1025px) {
		#leaders-message .leader-photo {
				width: 180px;
				margin: 0 0 20px 40px;
		}
}

#leaders-message h2 {
		margin: 0 0 40px 0;
		color: #69A644;
		font-size: 1.2rem;
		line-height: 1.5;
		font-family: 'Noto Sans JP', sans-serif;
		font-style: normal;
		font-weight: 700;
}

@media screen and (min-width: 768px) {
		#leaders-message h2 {
				font-size: 1.4rem;
				line-height: 1.8;
		}
}

@media screen and (min-width: 1025px) {
		#leaders-message h2 {
				margin: 40px 0;
				font-size: 1.6rem;
		}
}

#leaders-message p {
		margin: 10px 0;
		text-indent: 1rem;
}

#leaders-message p.not-indent {
		text-indent: 0;
}

#leaders-message .name-area {
		margin: 20px 0 40px 0;
}

@media screen and (min-width: 1025px) {
		#leaders-message .name-area {
				display: table;
				min-height: 180px;
				margin: 40px 0 0 auto;
		}
}

#leaders-message .name-area .logo {
		max-width: 40vw;
		margin: 0 auto;
}

@media screen and (min-width: 1025px) {
		#leaders-message .name-area .logo {
				display: table-cell;
				margin: 0;
		}
}

#leaders-message .name-area .name {
		text-align: center;
}

@media screen and (min-width: 1025px) {
		#leaders-message .name-area .name {
				display: table-cell;
				padding: 0 0 10px 30px;
				text-align: right;
				vertical-align: bottom;
		}
}

#leaders-message .name-area .name .ja {
		font-family: 'Noto Sans JP', sans-serif;
		font-style: normal;
		font-weight: 700;
		font-size: 1.2rem;
}

@media screen and (min-width: 1025px) {
		#leaders-message .name-area .name .ja {
				font-size: 1.4rem;
		}
}

#leaders-message .name-area .name .eng, #leaders-message .name-area .name #simple-ft .school-info .address-box h2, #simple-ft .school-info .address-box #leaders-message .name-area .name h2, #leaders-message .name-area .name
#simple-ft .school-info .sns-box h2,
#simple-ft .school-info .sns-box #leaders-message .name-area .name h2 {
		font-size: 1.25rem;
}

@media screen and (min-width: 1025px) {
		#leaders-message .name-area .name .eng, #leaders-message .name-area .name #simple-ft .school-info .address-box h2, #simple-ft .school-info .address-box #leaders-message .name-area .name h2, #leaders-message .name-area .name
		#simple-ft .school-info .sns-box h2,
		#simple-ft .school-info .sns-box #leaders-message .name-area .name h2 {
				font-size: 1.45rem;
		}
}

#company-overview {
		margin: 80px 0;
}

#company-overview h3 {
		margin: 40px 0;
		font-size: 1.4rem;
		font-weight: bold;
}

.company-tbl {
		width: 100%;
		border-top: 1px solid #999;
}

.company-tbl th, .company-tbl td {
		padding: 20px;
		border-bottom: 1px solid #999;
}

@media screen and (max-width: 544px) {
		.company-tbl th, .company-tbl td {
				display: block;
				padding: 10px;
		}
}

.company-tbl th {
		background: rgba(105, 166, 68, 0.3);
		white-space: nowrap;
}

@media screen and (max-width: 544px) {
		.company-tbl th {
				text-align: left;
				border-bottom: 0;
		}
}

.office-place dd {
		margin: 0 0 20px 40px;
}

.office-place dd:last-of-type {
		margin-bottom: 0;
}

#accessmap {
		margin: 80px 0;
}

#accessmap h3 {
		margin: 40px 0;
		font-size: 1.2rem;
		font-weight: bold;
}

@media screen and (min-width: 1025px) {
		#accessmap h3 {
				font-size: 1.4rem;
		}
}

#accessmap h3 .eng, #accessmap h3 #simple-ft .school-info .address-box h2, #simple-ft .school-info .address-box #accessmap h3 h2, #accessmap h3
#simple-ft .school-info .sns-box h2,
#simple-ft .school-info .sns-box #accessmap h3 h2 {
		font-size: 1.8rem;
}

#accessmap .maparea {
		margin: 40px 0;
}

#accessmap iframe {
		width: 100%;
		height: 50vh;
		border: 1px solid #999;
}

@media screen and (min-width: 1025px) {
		#accessmap iframe {
				height: 500px;
		}
}

.inq-text {
		margin: 40px auto 100px auto;
}

@media screen and (min-width: 1025px) {
		.inq-text {
				width: 60%;
		}
}

.inq-text .inn {
		margin: 40px 0;
		padding: 20px 0;
		font-size: 1.2rem;
		text-align: center;
		border: 2px solid #69A644;
		border-radius: 5px;
}

@media screen and (min-width: 1025px) {
		.inq-text .inn {
				margin: 50px 0;
		}
}

.inq-text .inq-tel a {
		font-size: 1.4rem;
}

@media screen and (min-width: 1025px) {
		.inq-text .inq-tel a {
				font-size: 1.8rem;
		}
}

.inq-text .inq-tel a::before {
		padding-right: 1rem;
		content: "\f098";
		font-size: 2rem;
		font-family: FontAwesome;
}

.inq-text .inq-mail a {
		font-size: 1.1rem;
		font-weight: bold;
		transition: .3s;
}

@media screen and (min-width: 1025px) {
		.inq-text .inq-mail a {
				font-size: 1.6rem;
		}
}

.inq-text .inq-mail a::before {
		padding-right: 1rem;
		content: "\f0e0";
		font-size: 1.8rem;
		font-family: FontAwesome;
}

.inq-text .inq-mail a:hover {
		color: #231815;
}

.sitemap-list {
		margin: 20px 0;
		list-style: none;
}

@media screen and (min-width: 1025px) {
		.sitemap-list {
				margin: 40px 0 50px 0;
		}
}

.sitemap-list li {
		display: block;
		margin-bottom: 15px;
}

.sitemap-list li > a {
		display: block;
		padding: 3px 10px;
		font-size: 1rem;
		color: #000;
		border-bottom: 1px solid #999;
		transition: .2s;
}

@media screen and (min-width: 1025px) {
		.sitemap-list li > a {
				font-size: 1.2rem;
		}
}

.sitemap-list li > a:focus, .sitemap-list li > a:hover {
		color: #C1402D;
		border-color: #C1402D;
}

.sitemap-sub-list {
		margin: 20px 0 40px 40px;
}

.sitemap-sub-list > li {
		display: inline-block;
		margin-right: 20px;
}

.sitemap-sub-list > li > a {
		padding: 3px 10px;
		color: #000;
		font-size: 0.9rem;
		line-height: 1.5;
		border-bottom: 1px solid transparent;
		transition: .2s;
}

@media screen and (min-width: 1025px) {
		.sitemap-sub-list > li > a {
				font-size: 1rem;
		}
}

.sitemap-sub-list > li > a:focus, .sitemap-sub-list > li > a:hover {
		color: #C1402D;
		border-color: #C1402D;
}

.sitemap-mds {
		margin: 15px 0 0 0;
		padding: 0 0 5px 5px;
		font-size: 1.1rem;
		color: rgba(0, 0, 0, 0.8);
		border-bottom: 1px solid #999;
}

@media screen and (min-width: 1025px) {
		.sitemap-mds {
				font-size: 1.3rem;
		}
}

.order-table {
		width: 100%;
		background: #FFF;
		border-collapse: collapse;
}

.order-table th,
.order-table td {
		border: 1px solid #CCC;
}

.order-table th {
		padding: 5px 2px;
		background: #d7eacc;
		text-align: center;
		font-weight: normal;
		white-space: nowrap;
		font-size: 0.9rem;
}

@media screen and (min-width: 1025px) {
		.order-table th {
				font-size: 1rem;
		}
}

.order-table td {
		padding: 10px 5px;
}

.order-table td a {
		color: #000;
		text-decoration: underline;
}

.order-table td a:focus, .order-table td a:hover {
		color: #000;
		background: rgba(105, 166, 68, 0.2);
		text-decoration: none;
}

.order-table td a:visited {
		color: #555;
}

.form-group {
		width: 100%;
		display: table;
		margin-bottom: 30px;
}

.form-group .control-label,
.form-group .input-area {
		display: table-cell;
		vertical-align: top;
}

.form-group .control-label {
		width: 30%;
}

.form-group .input-area {
		width: 70%;
}

@media screen and (max-width: 544px) {
		.form-group.pc .control-label,
		.form-group.pc .input-area {
				display: block;
				width: 100%;
		}
}

@media screen and (max-width: 544px) {
		.form-group.pc .control-label {
				margin-bottom: 15px;
				border-bottom: 1px solid #CCC;
		}
}

.form-control {
		display: block;
		width: 100%;
}

.form-md {
		display: inline-block;
		width: 150px;
}

.form-sm {
		display: inline-block;
		width: 100px;
}

.form-ss {
		display: inline-block;
		width: 50px;
}

#form-step {
		margin: 20px 0;
}

@media screen and (min-width: 1025px) {
		#form-step {
				margin: 40px 0;
		}
}

#form-step li {
		display: inline-block;
		width: 28%;
		height: 44px;
		margin-right: 6%;
		color: #000;
		background: #DEDEDE;
		text-align: center;
		line-height: 44px;
		position: relative;
}

@media screen and (min-width: 1025px) {
		#form-step li {
				width: 30%;
				margin-right: 4%;
		}
}

#form-step li::after {
		content: "";
		display: block;
		width: 0;
		height: 0;
		position: absolute;
		top: 0;
		left: 100%;
		border-top: 22px solid transparent;
		border-bottom: 22px solid transparent;
		border-left: 18px solid #DEDEDE;
}

@media screen and (min-width: 1025px) {
		#form-step li::after {
				border-left: 22px solid #DEDEDE;
		}
}

#form-step li:last-child {
		margin-right: 0;
}

#form-step li:last-child::after {
		border: 0;
}

#form-step li.active {
		background: #bbdba8;
}

#form-step li.active::after {
		border-left-color: #bbdba8;
}

#form-step li.active-eng {
		color: #FFF;
		background: #844E39;
}

#form-step li.active-eng::after {
		border-left-color: #844E39;
}

.hissu {
		display: inline-block;
		margin: 0 7px;
		padding: 0 5px;
		color: #FFF;
		background: #C1402D;
		font-size: .85rem;
		line-height: 1.5;
		border-radius: 3px;
}

.sample {
		margin: 10px 0;
		color: #C1402D;
		font-size: .85rem;
}

.form-status-msg {
		margin-bottom: 40px;
		padding: 20px;
		background: #FFF;
		border: 1px solid #CCC;
}

.form-status-msg .complete-msg {
		color: #0036D9;
		font-size: 1.1rem;
}

.error-msg {
		width: 96%;
		margin: 40px auto;
		padding: 10px 20px;
		background: #FFF;
		border: 2px solid #D80000;
		border-radius: 5px;
}

.error-msg li {
		margin: 0 0 5px 20px;
		color: #D80000;
}

.error-msg li:last-child {
		margin-bottom: 0;
}

input[type="text"],
input[type="password"],
input[type="file"],
textarea {
		-webkit-appearance: none;
		-moz-appearance: none;
		appearance: none;
}

input[type="text"],
input[type="password"] {
		height: 34px;
		padding: 0 5px;
		line-height: 34px;
}

select {
		height: 34px;
		line-height: 34px;
}

textarea.q-text {
		height: 100px;
		padding: 0 5px;
}

input[type="text"],
input[type="password"],
select,
textarea {
		border: 2px solid #DEDEDE;
		border-radius: 3px;
}

input[type="text"]:focus,
input[type="password"]:focus,
select:focus,
textarea:focus {
		border-color: #69A644;
		outline: none;
}

.radio,
.checkbox {
		cursor: pointer;
		margin-right: 20px;
		white-space: nowrap;
}

.radio:last-of-type,
.checkbox:last-of-type {
		margin-right: 0;
}

.radio {
		padding: 3px 5px 3px 25px;
		position: relative;
}

form input[type="radio"],
form input[type="checkbox"] {
		display: inline-block;
		margin: 0 10px 0 0;
		border: 2px solid #DDD;
		-webkit-appearance: button;
		appearance: button;
}

form input[type="radio"]:focus,
form input[type="checkbox"]:focus {
		border-color: #69A644;
		outline: none;
}

form input[type="radio"] {
		width: 16px;
		height: 16px;
		border-radius: 50%;
		position: absolute;
		top: 4px;
		left: 2px;
}

form input[type="radio"]:checked::after {
		content: "";
		display: block;
		width: 8px;
		height: 8px;
		position: absolute;
		top: 2px;
		left: 2px;
		background: #000;
		border-radius: 50%;
}

form input[type="checkbox"] {
		width: 14px;
		height: 14px;
		vertical-align: baseline;
		position: relative;
}

form input[type="checkbox"]:checked::after {
		content: "";
		display: block;
		width: 6px;
		height: 9px;
		position: absolute;
		top: 0;
		left: 2px;
		border-right: 3px solid #000;
		border-bottom: 3px solid #000;
		transform: rotate(45deg);
}

.btn-area {
		padding: 20px 0;
		background: #DEDEDE;
		border-radius: 3px;
}

.btn-lg {
		display: block;
		color: #FFF;
		background: #231815;
		transition: .3s;
		cursor: pointer;
		padding: 10px;
		font-size: 1.25rem;
		text-align: center;
		border-radius: 0.3rem;
}

.btn-lg:focus, .btn-lg:hover {
		color: #FFF;
		background: #C1402D;
}

.btn-lgs {
		display: block;
		color: #FFF;
		background: #231815;
		transition: .3s;
		cursor: pointer;
		display: inline-block;
		padding: 5px 20px;
		font-size: 1.125rem;
		text-align: center;
		border-radius: 0.2rem;
}

.btn-lgs:focus, .btn-lgs:hover {
		color: #FFF;
		background: #C1402D;
}

.btn-md {
		display: block;
		color: #FFF;
		background: #231815;
		transition: .3s;
		cursor: pointer;
		display: inline-block;
		padding: 5px 10px;
		font-size: 1rem;
		text-align: center;
		border-radius: 0.2rem;
}

.btn-md:focus, .btn-md:hover {
		color: #FFF;
		background: #C1402D;
}

.btn-sm {
		display: block;
		color: #FFF;
		background: #231815;
		transition: .3s;
		cursor: pointer;
		display: inline-block;
		padding: 1px 10px;
		font-size: 0.85rem;
		text-align: center;
		border-radius: 0.2rem;
}

.btn-sm:focus, .btn-sm:hover {
		color: #FFF;
		background: #C1402D;
}

.btn-back {
		background: #999;
}

.policy-kakunin {
		width: 100%;
		margin: 20px 0 40px 0;
		padding: 20px 15px;
		border: 3px solid rgba(193, 64, 45, 0.4);
		border-radius: 5px;
}

@media screen and (min-width: 1025px) {
		.policy-kakunin {
				width: 85%;
				margin: 20px auto 60px auto;
		}
}

@media screen and (min-width: 1025px) {
		.policy-kakunin div[class^="col-md"] {
				text-align: center;
		}
}

.order-btn-area {
		margin: 50px auto 80px auto;
}

@media screen and (min-width: 1025px) {
		.order-btn-area .inn {
				width: 70%;
				margin: 0 auto;
		}
}

.order-btn-area .submit, .order-btn-area .back {
		height: 50px;
		margin: 30px auto;
		padding: 0 20px;
		line-height: 50px;
		border-radius: 3px;
		position: relative;
}

.order-btn-area .submit {
		display: block;
		color: #FFF;
		background: #C1402D;
		transition: .3s;
		cursor: pointer;
		font-size: 1.1rem;
		font-weight: bold;
		letter-spacing: 2px;
}

.order-btn-area .submit:focus, .order-btn-area .submit:hover {
		color: #FFF;
		background: #231815;
}

@media screen and (min-width: 1025px) {
		.order-btn-area .submit {
				font-size: 1.3rem;
		}
}

.order-btn-area .submit.wide {
		width: 85%;
}

.order-btn-area .submit.md {
		width: 40%;
}

.order-btn-area .back {
		display: block;
		color: #FFF;
		background: #999;
		transition: .3s;
		cursor: pointer;
		font-size: 1rem;
}

.order-btn-area .back:focus, .order-btn-area .back:hover {
		color: #FFF;
		background: #231815;
}

@media screen and (min-width: 1025px) {
		.order-btn-area .back {
				font-size: 1.2rem;
		}
}

.eng-form-bg {
		padding: 10px 0;
		background: #F2EFE6;
}

@media screen and (min-width: 1025px) {
		.eng-form-bg {
				padding: 40px 0;
		}
}

.eng-form-mds {
		margin: 60px 0 20px 0;
		font-size: 1.2rem;
		font-weight: bold;
}

@media screen and (min-width: 1025px) {
		.eng-form-mds {
				font-size: 1.6rem;
		}
}

.form-input-area {
		background: #FFF;
		border: 1px solid rgba(153, 153, 153, 0.5);
}

.form-input-area .form-group {
		margin: 0;
		border-bottom: 1px solid rgba(153, 153, 153, 0.5);
}

.form-input-area .form-group:last-of-type {
		border-bottom: none;
}

@media screen and (min-width: 1025px) {
		.form-input-area .form-group .control-label {
				padding: 20px;
				background: #F4FAD8;
				border-right: 1px solid rgba(153, 153, 153, 0.5);
		}
		.form-input-area .form-group .control-label.noline {
				background: #FFF;
				border-right: 0;
		}
		.form-input-area .form-group .input-area {
				padding: 20px;
		}
}

@media screen and (max-width: 1025px) {
		.form-input-area .form-group .control-label,
		.form-input-area .form-group .input-area {
				display: block;
				width: 100%;
				padding: 10px;
		}
		.form-input-area .form-group .control-label {
				font-weight: bold;
		}
		.form-input-area .form-group .input-area {
				padding-top: 0;
		}
}

.form-input-area.policy-area {
		padding: 20px;
}

@media screen and (min-width: 1025px) {
		.form-input-area.policy-area {
				padding: 30px 40px;
		}
}

.shikaku-list .s-li {
		display: inline-block;
		margin: 3px 20px 3px 0;
}

@media screen and (min-width: 1025px) {
		.shikaku-list .s-li {
				margin-right: 40px;
		}
}

.policy-kakunin-box {
		height: 200px;
		margin: 30px 0;
		padding: 20px;
		border: 1px solid #CCC;
		overflow-y: scroll;
}

.policy-dl {
		margin: 20px 0;
}

.policy-dl dt {
		font-weight: bold;
}

.policy-dl dd {
		margin-bottom: 20px;
		margin-left: 20px;
}

@media screen and (min-width: 1025px) {
		.policy-dl dd {
				margin-left: 40px;
		}
}

.policy-dl dd ul {
		margin-left: 20px;
}

.policy-dl dd ol {
		margin-left: 30px;
}

.policy-ol-kakko {
		margin-left: 0 !important;
}

.policy-ol-kakko > li {
		list-style: none;
		padding-left: 3rem;
		text-indent: -3rem;
}

.policy-ol-kakko > li li {
		padding-left: 0;
		text-indent: 0;
}

.up-alpha li {
		list-style-type: upper-alpha;
}

.num-list li {
		list-style-type: decimal;
}

.kome-list {
		padding-left: 1rem;
		text-indent: -1rem;
}

a[href^="tel:"] {
		cursor: default;
}

@media only screen and (min-width: 992px) {
		a[href^="tel:"] {
				pointer-events: none;
		}
		a[href^="tel:"].pc {
				color: #000;
		}
}

a.blank::after {
		padding-left: 10px;
		content: "\f08e";
		font-family: FontAwesome;
}

/*
a.pdf::after {
	padding-left:5px;
	content: "\f1c1";
	font-family: FontAwesome;
}*/
a.caret-right::before, #panel ul li a::before, .page-nav li a::before, .side-bar ul li a::before, #other-nav ul li a::before, .sitemap-list li > a::before, .sitemap-sub-list > li > a::before {
		display: inline-block;
		margin-right: 10px;
		content: "\f0da";
		font-family: FontAwesome;
}

a.caret-right::before:hover, #panel ul li a::before:hover, .page-nav li a::before:hover, .side-bar ul li a::before:hover, #other-nav ul li a::before:hover, .sitemap-list li > a::before:hover, .sitemap-sub-list > li > a::before:hover {
		text-decoration: none;
}

a.touka {
		transition: .3s;
}

a.touka:active,
a.touka:hover {
		opacity: .7;
}

a.text-btn {
		display: inline-block;
		color: #000;
		border-bottom: 2px solid transparent;
		transition: .3s;
}

a.text-btn:focus, a.text-btn:hover {
		border-bottom: 2px solid #000;
}

/* Margin & Padding */
.mt-50 {
		margin-top: 50px;
}

.mt-40 {
		margin-top: 40px;
}

.mt-30 {
		margin-top: 30px;
}

.mt-20 {
		margin-top: 20px;
}

.mt-10 {
		margin-top: 10px;
}

.mt-05 {
		margin-top: 5px;
}

.mt-0 {
		margin-top: 0 !important;
}

.mb-100 {
		margin-bottom: 100px;
}

.mb-50 {
		margin-bottom: 50px;
}

.mb-40 {
		margin-bottom: 40px;
}

.mb-30 {
		margin-bottom: 30px;
}

.mb-20 {
		margin-bottom: 20px;
}

.mb-10 {
		margin-bottom: 10px;
}

.mb-05 {
		margin-bottom: 5px;
}

.mb-0 {
		margin-bottom: 0 !important;
}

.ml-05 {
		margin-left: 5px;
}

.ml-10 {
		margin-left: 10px;
}

.ml-20 {
		margin-left: 20px;
}

.ml-30 {
		margin-left: 30px;
}

.ml-40 {
		margin-left: 40px;
}

.ml-50 {
		margin-left: 50px;
}

.mr-05 {
		margin-right: 5px;
}

.mr-10 {
		margin-right: 10px;
}

.mr-20 {
		margin-right: 20px;
}

.mr-30 {
		margin-right: 30px;
}

.mr-40 {
		margin-right: 40px;
}

.mr-50 {
		margin-right: 50px;
}

.pt-50 {
		padding-top: 50px;
}

.pt-40 {
		padding-top: 40px;
}

.pt-30 {
		padding-top: 30px;
}

.pt-20 {
		padding-top: 20px;
}

.pt-10 {
		padding-top: 10px;
}

.pt-05 {
		padding-top: 5px;
}

.pb-100 {
		padding-bottom: 100px;
}

.pb-50 {
		padding-bottom: 50px;
}

.pb-40 {
		padding-bottom: 40px;
}

.pb-30 {
		padding-bottom: 30px;
}

.pb-20 {
		padding-bottom: 20px;
}

.pb-10 {
		padding-bottom: 10px;
}

.pb-05 {
		padding-bottom: 5px;
}

.pl-50 {
		padding-left: 50px;
}

.pl-40 {
		padding-left: 40px;
}

.pl-30 {
		padding-left: 30px;
}

.pl-20 {
		padding-left: 20px;
}

.pl-10 {
		padding-left: 10px;
}

.pl-05 {
		padding-left: 5px;
}

.pr-50 {
		padding-right: 50px;
}

.pr-40 {
		padding-right: 40px;
}

.pr-30 {
		padding-right: 30px;
}

.pr-20 {
		padding-right: 20px;
}

.pr-10 {
		padding-right: 10px;
}

.pr-05 {
		padding-right: 5px;
}

/* position */
.text-right {
		text-align: right;
}

.text-center {
		text-align: center;
}

.text-left {
		text-align: left;
}

.valign-middle {
		vertical-align: middle !important;
}

.valign-top {
		vertical-align: top !important;
}

.valign-bottom {
		vertical-align: bottom !important;
}

.text-nowrap {
		white-space: nowrap;
}

@media screen and (min-width: 1025px) {
		.pc-center {
				text-align: center;
		}
}

.pull-right {
		float: right;
}

.pull-left {
		float: left;
}

.pull-center {
		margin-right: auto;
		margin-left: auto;
}

.clearfix::after {
		display: block;
		content: "";
		clear: both;
}

/* Text Style */
.bold {
		font-weight: bold;
}

.text-normal {
		font-weight: normal;
}

.text-lg {
		font-size: 1.25rem;
}

.text-md {
		font-size: 1.12rem;
}

.text-mm {
		font-size: 1rem;
}

.text-sm {
		font-size: 0.87rem;
}

.text-xs {
		font-size: 0.75rem;
}

.sr-only {
		position: absolute;
		width: 1px;
		height: 1px;
		padding: 0;
		margin: -1px;
		overflow: hidden;
		clip: rect(0, 0, 0, 0);
		border: 0;
}

/* List */
.dl-horizontal.dl-space dt, .dl-horizontal.dl-space dd {
		margin-bottom: 5px;
}

.dl-horizontal.dl-space.dl-last-nomargin {
		margin-bottom: 0;
}

.site-green {
		color: #69A644;
}

.site-red {
		color: #C1402D;
}

.site-black {
		color: #231815;
}

.bg-white {
		background: #FFF;
}
