/* form_base ここから */
/* 全ての要素 */
* {
    font-family: 'Noto Sans JP', "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Hiragino Sans", "ヒラギノ角ゴシック", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS P Gothic", system-ui, sans-serif;
}
body {
	width: 100%;
	background: #fff;
	color: #333;
	font-size: 16px;
	line-height: 160%;
	margin: 0;
	padding: 0;
	-webkit-font-smoothing: antialiased;
	word-break: break-all;
}
a { text-decoration: underline; color: #223a70; }
a:hover { text-decoration: none; color: #223a70; }

hr {
	border-bottom: 1px dashed #ccc;
	margin: 20px auto 10px auto;
}
.caution_red1 {
	display: inline-block;
	border: 1px solid #cc0000;
	color: #cc0000;
	font-size: 14px;
	line-height: 140%;
	margin-top: 5px;
	padding: 3px 7px;
}
.caution_red2 {
	display: inline-block;
	background: #cc0000;
	color: #fff;
	font-size: 14px;
	margin-top: 5px;
	padding: 3px 7px;
}
/* button */
.btn_wrapper {
	text-align: center;
	margin: 30px auto;
}
.btn_wrapper a {
	display: inline-block;
	width: 90%;
	max-width: 300px;
	background: #58ACFA;
	border-bottom: 3px solid #3084d2;
	border-radius: 4px;
	box-sizing: border-box;
	color: #fff !important;
	font-size: 1.125rem;
	-webkit-font-smoothing: antialiased;
	font-weight: bold;
	text-decoration: none;
	text-align: center;
	letter-spacing: 1px;
	line-height: 140%;
	padding: 15px 10px;
	margin: 0px 5px 30px 5px;
	cursor: pointer;
}
a.btn_black {
	background: #444;
	border-bottom: 3px solid #000;
}
a.btn_mint {
	background: #4aaead;
	border-bottom: 3px solid #257b7a;
}
a.btn_pink {
	background: #ec8484;
	border-bottom: 3px solid #be5252;
}

.btn_wrapper a:last-child {
	margin-bottom: 0px;
}

.btn_wrapper a:hover {
	filter: alpha(opacity=90);
	-ms-filter: alpha(opacity=90);
	opacity: 0.9;
}
/* button_mini_size */
a.btn_mini  {
	display: inline-block;
	background: #223a70;
	border-bottom: 2px solid #001248;
	border-radius: 3px;
	box-sizing: border-box;
	color: #fff !important;
	font-size: 0.875rem;
	-webkit-font-smoothing: antialiased;
	font-weight: bold;
	text-decoration: none;
	text-align: center;
	letter-spacing: 1px;
	line-height: 140%;
	padding: 7px 15px;
	margin: 5px 5px 5px 5px;
	cursor: pointer;
}
a.btn_mini:hover {
	filter: alpha(opacity=90);
	-ms-filter: alpha(opacity=90);
	opacity: 0.9;
	text-decoration: none;
}
a.btn_mini2 {
	display: inline-block;
	background: #e4faff;
	border: 1px solid #223a70;
	box-sizing: border-box;
	color: #006699 !important;
	font-size: 0.875rem;
	-webkit-font-smoothing: antialiased;
	font-weight: bold;
	text-decoration: none;
	text-align: center;
	letter-spacing: 1px;
	line-height: 140%;
	padding: 5px 10px;
	margin: 5px 5px 5px 5px;
	cursor: pointer;
}
a.btn_mini2:hover {
	filter: alpha(opacity=90);
	-ms-filter: alpha(opacity=90);
	opacity: 0.9;
	text-decoration: none;
}
/* btn_square */
.btn_square_wrapper {
	text-align: center;
	margin-bottom: 30px;
}
.btn_square {
	position: relative;
	display: inline-block;
	width: 45%;
	max-width: 400px;
	background: #fff;
	border: 1px solid #223a70;
	border-radius: 4px;
	box-sizing: border-box;
	text-align: left;
	margin: 10px 10px 20px 10px;
	padding: 15px 20px;
	vertical-align: top;
}
.btn_square a {
	display: block;
	color: #2e6ea8;
	font-size: 20px;
	box-sizing: border-box;
	font-weight: bold;
	text-decoration: none;
}
.btn_square span {
	display: block;
	font-size: 12px;
	font-weight: normal;
	line-height: 140%;
	margin-top: 5px;
}
.btn_square::after {
	content: "";
	position: absolute;
	bottom: 10px;
	right: 10px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 0 10px 10px;
	border-color: transparent transparent #223a70 transparent;
}
.no_link {
	background: none;
	border: none;
}
.no_link::after {
	content: none;
}
@media screen and (max-width:639px) {
	.btn_square {
		width: 95%;
		max-width: 400px;
		margin: 10px auto 20px auto;
	}
}

/* footer */
footer {
	background: #ccc;
    color: #ffffff;
    font-size: 12px;
    padding: 15px 15px;
}
footer p {
	text-align: center;
}
.copyright {
	text-align: center;
}
/* form_base ここまで */

/* adjustment start */

/* show/hide
===================== */
.invisible {
	display: none !important;
}

/* adjustment end */