@charset "UTF-8";

/*
	Theme Name: gakuseiouen
	Version: 1.0
	Author: T Hira
	Description: 2021/12/20 Ver1.0 新規制作.
*/

@import url("reset.css");

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&family=Noto+Serif+JP:wght@400;700&display=swap');

/* ------------------------------
body
------------------------------ */
body {
	min-width: 320px;
	font-family: 'Noto Serif JP', serif;
	margin: 0px auto;
	font-size: 14px;
	line-height: 1.5;
	color: #333;
}
body .gothic {
	font-family: 'Noto Sans JP', sans-serif;
}
body .mincho {
	font-family: 'Noto Serif JP', serif;
}
body a ,
body a img ,
body a.notOpacity ,
body a.notOpacity img {
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
	text-decoration: none;
	color: #333;
}
body a:hover {
	text-decoration: none;
	filter: alpha(opacity=70);
	-moz-opacity: 0.7;
	opacity: 0.7;
}
body a:hover img {
	text-decoration: none;
	filter: alpha(opacity=70);
	-moz-opacity: 0.7;
	opacity: 0.7;
}
body a.notOpacity:hover ,
body a.notOpacity:hover img {
	filter: alpha(opacity=100);
	-moz-opacity: 1.0;
	opacity: 1.0;
}
body img.rollover:hover {
	filter: alpha(opacity=100);
	-moz-opacity: 1.0;
	opacity: 1.0;
}
body img {
	vertical-align: bottom;
	max-width: 100%;
	height: auto;
}
body .text {
	text-align: justify;
	text-justify: inter-ideograph;
}
body input ,
body textarea {
	font-family: 'Noto Sans JP', sans-serif;
}

/* ------------------------------
header
------------------------------ */
header {
	padding: 20px;
}
header .logo {
	max-width: 1140px;
	margin: 0px auto;
	font-size: 45px;
	font-weight: bold;
}
header .logo img {
	vertical-align: middle;
	margin-right: 1em;
	max-width: 25%;
}

/* ------------------------------
main
------------------------------ */
main {
	overflow: hidden;
	display: block;
	background-color: #f3f3f3;
	padding: 20px;
}
main:after {
	clear: both;
	content: "";
	display: block;
}
main .commonH {
	font-size: 21px;
	line-height: 1.5;
	padding: 1em;
	text-align: center;
}

/* ------------------------------
footer
------------------------------ */
footer .logoArea {
	max-width: 1140px;
	margin: 0px auto;
}
footer .logo {
	float: left;
	width: 50%;
	font-size: 30px;
	font-weight: bold;
	padding: 20px 0px;
}
footer .access {
	float: right;
	width: 50%;
	font-size: 18px;
	margin-top: 1.5em;
	padding: 20px 0px;
}
footer .logo img {
	vertical-align: middle;
	margin-right: 1em;
	max-width: 25%;
}
footer .copyright {
	clear: both;
	background-color: #000;
	color: #fff;
	font-size: 15px;
	line-height: 2;
	text-align: center;
	padding: 1em;
}
footer .copyright a {
	color: #000;
}

/* ------------------------------
common
------------------------------ */
/* margin */
.mb_0 {
	margin-bottom: 0px !important;
}
.mb_10 {
	margin-bottom: 10px !important;
}
.mb_20 {
	margin-bottom: 20px !important;
}
.mb_30 {
	margin-bottom: 30px !important;
}
.mb_40 {
	margin-bottom: 40px !important;
}
.mb_80 {
	margin-bottom: 80px !important;
}
.mt_minus20 {
	margin-top: -20px;
}
.mt_minus30 {
	margin-top: -30px;
}
/* float */
.f_left {
	float: left;
	margin-right: 10px;
}
.f_right {
	float: right;
	margin-left: 10px;
}
/* clear */
.c_both {
	clear: both;
}

.under1000 {
	display: none;
}

/* ------------------------------
wordpress
------------------------------ */
.alignnone {
	margin: 10px;	
}
.aligncenter {
	display: block;
	margin: 10px auto;
}
.alignleft {
	float: left;
	margin: 10px;
}
.alignright {
	float: right;
	margin: 10px;
}
.size-full {
	max-width: 100%;
	height: auto;
	margin-top: 10px;
	margin-bottom: 10px;
}

/* ------------------------------
home HOME
------------------------------ */
/* 申込フォーム */
#introduction {
	max-width: 870px;
	margin: 0px auto 80px;
	padding: 40px;
	font-size: 18px;
	line-height: 2;
}
#introduction .text {
	margin-bottom: 1em;
}
#page-home #introduction table {
	border: solid 1.5px #f1f1f1;
	margin-bottom: 1em;
	background-color: #fff;
	border-collapse: collapse;
}
#page-home #introduction table th {
	border: solid 1.5px #f1f1f1;
	padding: 0.5em 1em;
	font-weight: normal;
	text-align-last: justify;
}
#page-home #introduction table td {
	border: solid 1.5px #f1f1f1;
	padding: 0.5em 1em;
}
#page-home #application {
	max-width: 1140px;
	margin: 0px auto 80px;
	padding: 40px;
	background-color: #fff;
	font-size: 15px;
	font-family: 'Noto Sans JP', sans-serif;
}
#page-home .formArea {
	max-width: 900px;
	margin: 0px auto;
}
#page-home .formArea h2 {
	font-size: 21px;
	border-bottom: solid 1.5px #000;
	padding-bottom: 0.5em;
}
#page-home .formArea dl {
	margin-bottom: 80px;
}
#page-home .formArea dt {
	line-height: 22px;
	margin-top: 20px;
	margin-bottom: 5px;
}
#page-home .formArea dd.check {
	padding: 15px;
	background-color: #eee;
}
#page-home .formArea dd.check label {
	display: inline-block;
	margin-right: 5px;
	margin-bottom: 5px;
}
#page-home .formArea dl.agreement {
	border-top: solid 1.5px #000;
}
#page-home .formArea dl.agreement dd {
	line-height: 2;
}
#page-home .mw_wp_form .horizontal-item + .horizontal-item {
	margin-left: 0px;
}
#page-home .formArea .must {
	background-color: #CC3300;
	margin-left: 20px;
	color: #fff;
	font-size: 12px;
	padding: 0 5px;
	vertical-align: top;
}
#page-home .formArea .free {
	margin-left: 35px;
}
#page-home .formArea input[type="text"] ,
#page-home .formArea input[type="number"] {
	border-radius: 0;
	border: none;
	line-height: 28px;
	padding: 15px;
	box-sizing: border-box;
	background-color: #fff;
	border: solid 2px #eee;
	width: 100%;
	font-size: 16px;
}
#page-home .formArea input[type="number"] ,
#page-home .formArea .mwform-tel-field input ,
#page-home .formArea .mwform-zip-field input {
	width: 27.5% !important;
}
#page-home .formArea .mwform-tel-field input {
	width: auto;
}
#page-home .formArea .mwform-radio-field {
	display: inline-block;
	min-width: 200px;
	width: 32.5%;
	box-sizing: border-box;
	background-color: #fff;
	border: solid 2px #eee;
	padding: 15px;
	margin-right: 5px;
	margin-bottom: 5px;
}
#page-home .formArea textarea {
	border-radius: 0;
	border: none;
	line-height: 28px;
	padding: 15px;
	box-sizing: border-box;
	background-color: #fff;
	border: solid 2px #eee;
	width: 100%;
	font-size: 16px;
	margin-bottom: 40px;
}
#page-home .formArea .error {
	background-color: #fcc;
	padding-left: 20px;
}
#page-home .formArea .buttons {
	margin: 40px auto;
	text-align: center;
}
#page-home .formArea .buttons input {
	display: inline-block;
	appearance: none;
	-webkit-appearance: none;
	background-color: #181924;
	line-height: 50px;
	font-size: 16px;
	color: #fff;
	text-align: center;
	border-radius: 10px;
	margin: 0 auto 10px;
	padding: 0px 40px;
	min-width: 180px;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
#page-home .formArea .buttons input:hover {
	cursor: pointer;
	filter: alpha(opacity=70);
	-moz-opacity: 0.7;
	opacity: 0.7;
}
#page-home #application .please {
	max-width: 720px;
	font-size: 21px;
	padding: 0px 0.5em;
	margin: 0px auto 40px;
}
#page-home #application .privacyPolicy {
	overflow: hidden;
	max-width: 720px;
	padding: 0px 0.5em;
	margin: 0px auto;
	line-height: 1.75;
	font-size: 15px;
}
#page-home #application .privacyPolicy h4 {
	font-weight: normal;
}

/* 確認画面 */
.mw_wp_form_confirm .note ,
.mw_wp_form_confirm .must ,
.mw_wp_form_confirm .free ,
.mw_wp_form_confirm .buttons input[type="reset"] {
	display: none;
}
.mw_wp_form_confirm dd.check {
	background-color: #fff !important;
	padding: 15px 0 !important;
}
/* 確認画面と完了画面 */
.mw_wp_form_confirm .introduciton ,
.mw_wp_form_complete .introduciton {
	display: none;
}


/* ------------------------------
レスポンシブウェブデザイン
------------------------------ */
@media screen and (max-width:1159.999px) {

	.over1140 {
		display: none;
	}
	.under1140 {
		display: block;
	}

	/* header */
	header {
		padding: 10px;
	}
	header .logo {
		font-size: 21px;
	}
	header .logo img {
		margin-right: 0.5em;
		max-width: 20%;
	}
	/* main */
	main {
		padding: 10px;
	}

	/* footer */
	footer .logo {
		float: none;
		width: 100%;
		font-size: 21px;
		padding: 10px;
		max-width: 360px;
		margin: 0px auto 20px;
	}
	footer .access {
		float: none;
		width: 100%;
		font-size: 15px;
		margin-top: 1.5em;
		padding: 10px;
		max-width: 360px;
		margin: 0px auto 20px;
	}
	footer .logo img {
		margin-right: 0.5em;
		max-width: 20%;
	}
	footer .copyright {
		font-size: 12px;
		padding: 1em;
	}
	footer .copyright a {
		color: #fff;
	}


	/* home ホーム */
/* 申込フォーム */
	#introduction {
		max-width: 720px;
		padding: 0px;
		font-size: 15px;
	}
	#page-home #introduction table th {
		padding: 0.5em;
		min-width: 6em;
	}
	#page-home #introduction table td {

		padding: 0.25em;
	}



	#page-home #application {
		max-width: 720px;
		margin: 0px auto 40px;
		padding: 20px;
	}
	#page-home .formArea h2 {
		font-size: 18px;
	}
	#page-home .formArea {
		max-width: 720px;
	}
	#page-home .formArea dl {
		margin-bottom: 40px;
	}
	#page-home .formArea dt {
		line-height: 20px;
	}
	#page-home .formArea input[type="text"] {
		padding: 10px;
	}
	#page-home .formArea .mwform-radio-field {
		width: 100%;
		padding: 10px;
	}
	#page-home .formArea textarea {
		margin-bottom: 20px;
	}
	#page-home .formArea .error {
		padding-left: 10px;
	}
	#page-home .formArea .buttons {
		margin: 20px auto;
	}
	#page-home .formArea .buttons input {
		padding: 0px 10px;
		min-width: auto;
	}
	#page-home .formArea .buttons input:hover {
		cursor: pointer;
		filter: alpha(opacity=70);
		-moz-opacity: 0.7;
		opacity: 0.7;
	}

}

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

	/* wordpress */
	.alignnone {
		display: block;
		margin: 5px auto;
	}
	.aligncenter {
		float: none;
		display: block;
		margin: 5px auto;
	}
	.alignleft {
		display: block;
		float: none;
		margin: 5px auto;
	}
	.alignright {
		float: none;
		display: block;
		margin: 5px auto;
	}
	.size-full {
		max-width: 100%;
		height: auto;
	}

	.over1000 {
		display: none;
	}
	.under1000 {
		display: inline;
	}
}