@charset "UTF-8";
/* CSS Document */
/*! sanitize.css v12.0.1 | CC0 License | github.com/csstools/sanitize.css */
button, hr, input {
	overflow: visible;
}
audio, canvas, progress, video {
	display: inline-block;
}
button, select {
	text-transform: none;
}
body, button, dl dl, dl ol, dl ul, input, ol dl, ol ol, ol ul, select, textarea, ul dl, ul ol, ul ul {
	margin: 0;
}
pre, textarea {
	overflow: auto;
}
hr, legend {
	color: inherit;
}
details, dialog, main {
	display: block;
}
*, ::after, ::before {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
::after, ::before {
	text-decoration: inherit;
	vertical-align: inherit;
}
html {
	cursor: default;
	line-height: 1.5;
	-moz-tab-size: 4;
	-o-tab-size: 4;
	tab-size: 4;
	-webkit-tap-highlight-color: transparent;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	word-break: break-word;
}
h1 {
	font-size: 2em;
	margin: 0.67em 0;
}
code, kbd, pre, samp {
	font-family: monospace, monospace;
	font-size: 1em;
}
hr {
	height: 0;
}
nav ol, nav ul {
	list-style: none;
	padding: 0;
}
nav li::before {
	content: "​";
}
pre {
	-ms-overflow-style: scrollbar;
}
a {
	background-color: transparent;
}
abbr[title] {
	-webkit-text-decoration: underline dotted;
	text-decoration: underline dotted;
}
b, strong {
	font-weight: bolder;
}
small {
	font-size: 80%;
}
audio, canvas, iframe, img, svg, video {
	vertical-align: middle;
}
audio:not([controls]) {
	display: none;
	height: 0;
}
iframe, img {
	border-style: none;
}
svg:not([fill]) {
	fill: currentColor;
}
svg:not(:root) {
	overflow: hidden;
}
table {
	border-collapse: collapse;
	border-color: inherit;
	text-indent: 0;
}
[type=button], [type=reset], [type=submit], button {
	-webkit-appearance: button;
}
fieldset {
	border: 1px solid #a0a0a0;
	padding: 0.35em 0.75em 0.625em;
}
legend {
	display: table;
	max-width: 100%;
	white-space: normal;
}
progress {
	vertical-align: baseline;
}
textarea {
	resize: vertical;
	resize: block;
}
[type=checkbox], [type=radio] {
	padding: 0;
}
[type=search] {
	-webkit-appearance: textfield;
	outline-offset: -2px;
}
::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
	height: auto;
}
::-webkit-input-placeholder {
	color: inherit;
	opacity: 0.54;
}
::-webkit-search-decoration {
	-webkit-appearance: none;
}
::-webkit-file-upload-button {
	-webkit-appearance: button;
	font: inherit;
}
::-moz-focus-inner {
	border-style: none;
	padding: 0;
}
:-moz-focusring {
	outline: ButtonText dotted 1px;
}
:-moz-ui-invalid {
	box-shadow: none;
}
dialog {
	background-color: #fff;
	border: solid;
	color: #000;
	height: -moz-fit-content;
	height: -webkit-fit-content;
	height: fit-content;
	left: 0;
	margin: auto;
	padding: 1em;
	position: absolute;
	right: 0;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
}
[hidden], dialog:not([open]), template {
	display: none;
}
summary {
	display: list-item;
}
[tabindex], a, area, button, input, label, select, summary, textarea {
	-ms-touch-action: manipulation;
}
[aria-busy=true] {
	cursor: progress;
}
[aria-controls] {
	cursor: pointer;
}
[aria-disabled=true], [disabled] {
	cursor: not-allowed;
}
[aria-hidden=false][hidden] {
	display: initial;
}
[aria-hidden=false][hidden]:not(:focus) {
	clip: rect(0, 0, 0, 0);
	position: absolute;
}
/*基本・共通******************************************/
/*html5*/
article, aside, dialog, figure, footer, header, hgroup, nav, section {
	display: block;
}
a {
	-webkit-transition-delay: 0s;
	transition-delay: 0s;
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
	-webkit-transition-property: color, background-color, width, height, opacity, border-color, border;
	transition-property: color, background-color, width, height, opacity, border-color, border;
	-webkit-transition-timing-function: ease;
	transition-timing-function: ease;
	text-decoration: underline;
	opacity: 1;
}
a[href]:link {
	color: #3563a1;
}
a[href]:visited {
	color: #7135a0;
}
a:active, a:hover {
	opacity: 0.8;
}
a:hover, a:focus, a:active {
	text-decoration: none;
}
/*画像*/
img {
	max-width: 100%;
	height: auto;
	vertical-align: top;
	margin: 0;
	padding: 0;
}
/* リンク別に開く */
a .nw {
	display: inline-block;
	font-size: 0.75em;
	text-decoration: none;
	margin-left: 0.2em;
}
/* 外部サイトリンク */
.out {
	display: inline-block;
	overflow: hidden;
	position: relative;
	margin-left: 0.2em;
	width: 1em;
	padding-top: 1em;
	height: 0;
	text-decoration: none;
	line-height: 1;
	vertical-align: middle;
}
.out::before {
	content: "";
	width: 1em;
	height: 1em;
	position: absolute;
	left: 0;
	top: 0;
	display: block;
	background-repeat: no-repeat;
	background-size: contain;
	background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2IiB2aWV3Qm94PSIwIDAgMTYgMTYiPjxkZWZzPjxzdHlsZT4uZCwuZXtmaWxsOm5vbmU7fS5le3N0cm9rZTojMmMzZTUwO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDtzdHJva2Utd2lkdGg6MXB4O308L3N0eWxlPjwvZGVmcz48ZyBpZD0iYSIvPjxnIGlkPSJiIj48ZyBpZD0iYyI+PGc+PHBhdGggY2xhc3M9ImQiIGQ9Ik0wLDBIMTZWMTZIMFYwWiIvPjxwYXRoIGNsYXNzPSJlIiBkPSJNNy4zMyw0LjY3aC0zLjMzYy0uNzQsMC0xLjMzLC42LTEuMzMsMS4zM3Y2YzAsLjc0LC42LDEuMzMsMS4zMywxLjMzaDZjLjc0LDAsMS4zMy0uNiwxLjMzLTEuMzN2LTMuMzMiLz48bGluZSBjbGFzcz0iZSIgeDE9IjYuNjciIHkxPSI5LjMzIiB4Mj0iMTMuMzMiIHkyPSIyLjY3Ii8+PHBvbHlsaW5lIGNsYXNzPSJlIiBwb2ludHM9IjEwIDIuNjcgMTMuMzMgMi42NyAxMy4zMyA2Ii8+PC9nPjwvZz48L2c+PC9zdmc+");
}
/*見出し*/
h1, h2, h3, h4, h5, h6, strong {
	color: #1e1e1e;
}
h1, h2, h3, h4, h5, h6 {
	margin: 0;
	padding: 0;
}
/*文*/
p {
	margin: 0;
	padding: 0;
}
em {
	font-size: 1em;
	text-decoration: none;
	font-style: normal;
	color: #C33;
}
/*大・小*/
.large {
	font-size: 1.125em;
}
small, .small {
	font-size: 0.9em;
}
.clear {
	clear: both;
}
hr {
	border: 0;
	border-top: 1px dotted #999;
	margin: 10px 0;
}
hr.clear {
	display: none;
}
/*読み上げ用隠し*/
.speech {
	margin: 0;
	padding: 0;
	display: block;
	width: 1px;
	height: 1px;
	position: absolute;
	left: -9999px;
	overflow: hidden;
}
/*印刷のみ*/
.printOnly {
	display: none;
}
@media print {
	/*印刷時*/
	.speech {
		display: none;
	}
	.printOnly {
		display: block;
	}
}
/*非表示*/
.prErr, .noDisp {
	display: none !important;
}
/*Helper*/
.center, .text-center {
	text-align: center;
}
.text-left {
	text-align: left;
}
.text-right {
	text-align: right;
}
.float-right {
	float: right;
}
.float-left {
	float: left;
}
.text-large {
	font-size: 1.2em;
}
/*clearfix*/
.clearfix:after {
	content: " ";
	display: block;
	clear: both;
}
.inline {
	display: inline-block;
}
.inline-list li {
	display: inline-block;
}
/*alert*****************************/
.alert {
	color: #333;
	border-radius: 10px;
	padding: 20px 36px;
	margin: 20px 10px;
	border: 2px solid #8ed9f6;
}
.alert strong {
	color: #000;
	font-weight: bold;
}
.alert-danger {
	background: #ffecec;
	border-color: #f5aca6;
}
.alert-danger strong {
	color: #c00;
}
.warning {
	background: #fff8c4;
	border-color: #f2c779;
}
.alert-success {
	/*	background:#e9ffd9;*/
	border-color: #a6ca8a;
}
/*構造 レイアウト*******************************************************/
body {
	font-size: 100%;
	font-family: YakuHanJP, "Noto Sans JP", "游ゴシック", YuGothic, "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	-webkit-font-feature-settings: "pkna";
	font-feature-settings: "pkna";
	line-height: 1.6;
	word-wrap: break-word;
	overflow-wrap: break-word;
	position: relative;
	overflow-x: hidden;
	min-width: 320px;
	width: 100%;
	z-index: 1;
	color: #333;
	background: #fff;
}
/*IE10+,Edge*/
_:-ms-lang(x), body {
	font-family: YakuHanJP, "Noto Sans JP", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}
.container {
	position: relative;
	display: block;
}
/*Mobile*/
@media screen and (max-width: 767px) {
	.container {
		margin: 0 10px;
	}
}
/*Desktop & Print*/
@media screen and (min-width: 768px), print {
	.container {
		margin: 0 auto;
		padding: 0 20px;
		max-width: 1240px;
	}
}
@media print {
	body {
		display: block;
		min-height: 0;
		width: 1240px;
	}
}
/*ヘッダー詳細*******************************************************/
#pageHead {
	font-size: 1rem;
	z-index: 20;
	padding: 18px 0;
	border-bottom: 4px solid #00732E;
}
#pageHead .siteTitle {
	display: inline-block;
	font-size: 1.25em;
	line-height: 1.2;
	vertical-align: top;
	padding-top: 5px;
	margin-right: 8px;
}
#pageHead .siteTitle a {
	display: inline-block;
	text-decoration: none;
	-webkit-transition-property: opacity;
	transition-property: opacity;
}
/*ロゴ*/
.logo {
	display: inline-block;
	vertical-align: middle;
	overflow: hidden;
	background-size: contain;
	background-position: left center;
	background-repeat: no-repeat;
	max-width: 100%;
	height: 0;
	background-image: url("logo_college.png");
}
#pageHead .logo {
	width: 330px;
	padding-top: 52px;
}

@media screen and (max-width: 767px) {
    #pageHead .logo {
        width: 300px;
        padding-top: 40px;
    }
}
/*フッター詳細*******************************************************/
#pageFoot {
	clear: both;
	padding: 20px 0;
	overflow: hidden;
	position: relative;
	font-size: 0.875rem;
	text-align: center;
	background-color: #edf1f2;
}
#copyright {
	margin: 0;
	padding: 0;
	text-align: right;
	line-height: 1;
}
#copyright small {
	font-size: 0.6875rem;
}
/*********************************/
main {
	padding: 0 0 40px 0;
}
.contentHead {
	position: relative;
	padding: 24px 0 15px;
	margin: 0 0 22px;
	background-color: #edf1f2;
}
.contentHead h1 {
	position: relative;
	font-size: 2em;
	font-weight: 700;
	line-height: 1.5;
	margin: 0 auto;
	padding: 0 20px 8px;
	max-width: 1240px;
}
.contentHead h1::before {
	/* content: ""; */
	display: inline-block;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	width: 80px;
	height: 3px;
	background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjgwIiBoZWlnaHQ9IjMiIHZpZXdCb3g9IjAgMCA4MCAzIj48cGF0aCBmaWxsPSIjMDA3MmI4IiBkPSJNMCAwaDE2djNIMHoiLz48cGF0aCBmaWxsPSIjMThiY2U5IiBkPSJNMTYgMGgxNnYzSDE2eiIvPjxwYXRoIGZpbGw9IiMwNmEwNGIiIGQ9Ik0zMiAwaDE2djNIMzJ6Ii8+PHBhdGggZmlsbD0iI2U0MTA1YSIgZD0iTTQ4IDBoMTZ2M0g0OHoiLz48cGF0aCBmaWxsPSIjZmRjNTBhIiBkPSJNNjQgMGgxNnYzSDY0eiIvPjwvc3ZnPg==");
	position: absolute;
	bottom: 0;
	left: 20px;
}
/*Mobile*/
@media screen and (max-width: 767px) {
	.contentHead h1 {
		padding: 0 10px 8px;
	}
	.contentHead h1::before {
		left: 10px;
	}
}
/*********************************/
.sw {
	text-align: center;
}
.sw > * {
	margin: 0.5em;
}
/*ボタン*/
button.btn {
	-moz-appearance: none;
	appearance: none;
	-webkit-appearance: none;
	-webkit-box-shadow: none;
	box-shadow: none;
}
.btn, a.btn[href] {
	display: inline-block;
	line-height: 1.5;
	border-radius: 2em;
	margin: 0.5em;
	padding: 0.5em 2em;
	position: relative;
	text-decoration: none;
	color: #fff;
	background-color: #00732E;
	border: 1px solid #fff;
}
a.btn[href]:link, a.btn[href]:visited {
	color: #fff;
}
a.btn::after {
	content: "";
	display: inline-block;
	vertical-align: middle;
	margin-left: 0.467em;
	margin-top: -0.267em;
	width: 0.467em;
	height: 0.467em;
	border-width: 1px 1px 0 0;
	border-style: solid;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	border-color: #fff;
	-webkit-transition: all .3s;
	transition: all .3s;
}
.btn:hover, .btn:active, .btn:focus {
	opacity: 0.8;
}
.btn:hover .title, .btn:active .title, .btn:focus .title {
	text-decoration: underline;
}

button.btn{
	color: #333;
	background: #fff;
	border-color: #00732E;
}
button.btn.next{
	color: #fff;
	background-color: #00732E;

}

main section{
    clear: both;
    margin-bottom: 40px;
}


main h2, main h3, main h4, main h6, main strong {
	color: #1e1e1e;
}
main h2 {
	clear: both;
	position: relative;
	margin: 1.5em 0 0.542em 0;
	padding: 0.35em 0.3em 0.208em 0.042em;
	font-weight: 700;
	font-size: 1.6em;
	line-height: 1.32;
	border-style: solid;
	border-width: 0 0 2px 0;
	border-bottom-color: rgba(0, 115, 46, 0.30);;
}
main h2::before {
	content: "";
	width: 180px;
	display: inline-block;
	border-top-width: 2px;
	border-top-style: solid;
	border-top-color: #00732E;
	position: absolute;
	bottom: -2px;
	left: 0;
}
main h3 {
	clear: both;
	margin: 1em 0 0.545em 0;
	padding: 0.364em 0 0.409em 10px;
	position: relative;
	font-size: 1.375em;
	line-height: 1.3;
	background-color: #ebf2f7;
}
main h3::before {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	bottom: 0;
	width: 4px;
	height: 100%;
	background-color: #004d91;
}
main h4 {
	clear: both;
	font-size: 1.125em;
	line-height: 1.3;
	padding-bottom: 4px;
	padding: 0.2em 0 0.2em 8px;
	margin: 0.8em 0 0.4em 0.5em;
	position: relative;
	border-bottom-style: solid;
	border-bottom-width: 1px;
	border-bottom-color: #c8c8c8;
}
main h4::before {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	bottom: 0;
	width: 3px;
	height: 100%;
	background-color: #b0bbc1;
}

/*申し込みステップ*/
.flow-steps {
	display: block;
	margin: 20px 10px;
	text-align: center;
}
.flow-steps > ol {
	margin: 0 auto;
	padding: 0;
	display: inline-flex;
	flex-flow: row wrap;
	list-style: none;
	overflow: hidden;
	line-height: 1.5;
	position: relative;
	z-index: 1;
}
.flow-steps li {
	background: #fff;
	border: 1px solid #ccc;
	display: inline-block;
	padding: 8px 1em 8px 2em;
	min-width: 3em;
	text-align: center;
	position: relative;
}
.flow-steps li:first-child {
	padding-left: 1.5em;
}
.flow-steps li:last-child {
	padding-right: 1.5em;
}
.flow-steps li::before, .flow-steps li::after {
	position: absolute;
	background-color: #fff;
	border-right: 1px solid #ccc;
	content: " ";
	display: block;
	height: 50%;
	width: 1.5em;
	right: -0.8em;
	z-index: 2;
}
.flow-steps li::before {
	top: 0;
	transform: skew(30deg);
}
.flow-steps li::after {
	bottom: 0;
	transform: skew(-30deg);
}
.flow-steps li:last-child::before, .flow-steps li:last-child::after {
	display: none;
}
.flow-steps li.current,
.flow-steps li.current::before,
.flow-steps li.current::after{
	color: #fff;
	background: #00732E;
}

/*Mobile*/
@media screen and (max-width: 767px) {
	.flow-steps > ul {
		font-size: 0.7em;
	}
}
/*Desktop & Print*/
@media screen and (min-width: 768px), print {
	.flow-steps > ul {
		margin: 0 auto;
		display: inline-flex;
		font-size: 1em;
	}
}

.InputData dt{
	font-size: 1.125em;
	padding: 0 5px 10px;
}
.InputData dd{
	margin:0 0 15px 0;
	padding:10px 5px 15px;
	border-bottom: 1px solid #CCC;
}

.conf .InputData dd{
	min-height: 1.5em;
}
/**説明書き*/
.notes{
	font-size: 0.9em;
	color: #bf1a20;
}
p.notes,
.notes li{
	margin-bottom: 5px;
}


/*テキスト入力*/
.InputData .InText{
	font-size:1em;
	line-height:1.5;
	max-width:100%;
	width: 100%;
	border: 1px solid #aaa;
	padding: 3px;
}
.InputData textarea.InText{
	width:100%;
}
/*ラジオ、チェック*/
.radio,
.checkbox{
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-align: baseline;
	-ms-flex-align: baseline;
	align-items: baseline;
}
.radio input,
.checkbox input{
	margin-right: 0.2em;
}
/*checkbox/radioリスト*/
ul.radios,
ul.checkboxs{
	line-height: 1.5;
	margin: 0;
	padding: 0;
	list-style-type: none;
}
ul.radios li,
ul.checkboxs li{
	display: block;
	margin-bottom: 5px;
}
ul.radios.inline li,
ul.checkboxs.inline li,
ul.radios .inline li,
ul.checkboxs .inline li{
	display: inline-block;
	margin-right: 1em;
}

fieldset.radios{
	border: 0;
	padding: 0 0 0.5em 0;
}
fieldset.radios>*{
	margin-right: 1em;
}
/*必須*/
.required{
	color: #FFF;
	background-color: #bf1a20;
	margin: 0 0.2em;
	padding: 1px 8px 3px ;
	line-height: 1.2;
	font-size: 0.8125em;
	font-weight: 500;
	display: inline-block;
	vertical-align: middle;
	border-radius: 0.5em;
}
/*任意*/
.optional{
	color: #FFF;
	background-color: #666;
	margin: 0 0.2em;
	padding: 1px 8px 3px ;
	line-height: 1.2;
	font-size: 0.8125em;
	font-weight: 500;
	display: inline-block;
	vertical-align: middle;
	border-radius: 0.5em;
}

.ErrorMsg{
	position: relative;
	padding-left: 1.5em;
	font-weight: 800;
	color: #bf1a20;
}
.ErrorMsg:before{
	display: block;
	content: "!";
	font-size: 0.875em;
	width: 1.2em;
	height: 1.2em;
	text-align: center;
	line-height: 1.2;
	position: absolute;
	left: 0;
	top: .3em;
	color: #FFF;
	background-color:#bf1a20;
	border-radius: 100%;
}

