@charset "utf-8";

body {
	font-family: "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka,
		"ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 15px;
	color: #000;
	background-color: #fff;
	line-height: 1.7;
	text-align: justify;
}


/******************************
 contents
******************************/
header {
	width: 100%;
	max-width: 1100px;
	display: block;
	margin: 0 auto;
	border-top: 10px solid #1D2080;
}

@media screen and (min-width: 641px) {
h1 {
	background: url(../images/main_pc_bg.png) center top no-repeat;
	height: 590px;
	object-fit: cover;
}
}

h1 img {
	width: 100%;
	max-width: 750px;
	display: block;
	margin: 0 auto;
}

.tsuyomi {
	width: 100%;
	max-width: 1100px;
	display: block;
	margin: 0 auto;
	background: #E6F2FF;
}

.tsuyomi p img {
	width: 100%;
	max-width: 750px;
	display: block;
	margin: 0 auto;
}

/******************************
 フォーム
******************************/

.form {
	width: 100%;
	max-width: 1100px;
	display: block;
	margin: 0 auto;
	background: #1D2080;
	padding-top: 40px;
	padding-bottom: 40px;
}


.form .box {
	width: 94%;
	margin: 0 auto;
	background: #FFF;
	border-radius: 4px;
}

.form .box .box-inner {
	width: 93%;
	margin: 0 auto;
	padding-top: 35px;
	padding-bottom: 42px;
}

@media screen and (min-width: 641px) {
.form {
	padding-top: 90px;
	padding-bottom: 90px;
}

.form .box {
	max-width: 750px;
	border-radius: 4px;
}

.form .box .box-inner {
	max-width: 550px;
	padding-top: 50px;
	padding-bottom: 50px;
}
}

.input-group + .input-group {
	margin-top: 1.25em;
}

.form .label {
	font-size: 15px;
}

.form .label .required {
	font-size: 12px;
}

input {
	border: 1px solid #9C9C9C;
	font-size: 16px;
	line-height: 1.7;
	padding: 0.5em;
}

input[type="text"] {
	width: 95%;
	margin-top: 0.5em;
}

input[type=checkbox] {
	transform: scale(1.5);
	margin: 0 8px 0 4px;
}

input[type="submit"] {
	color: #FFF;
	border: none;
	border-radius: 6px;
	background: #EF7B22;
	padding: 0.5em 1.75em;
}
@media screen and (max-width: 640px) {
input[type="submit"] {
	margin-bottom: 0.25em;
}
}

p.kakunin {
	line-height: 1.4;
	padding-bottom: 0.25em;
}
@media screen and (min-width: 641px) {
p.kakunin {
	padding-top: 0.5em;
	padding-bottom: 1em;
}
}

.submit {
	margin-top: 1.25em;
}
@media screen and (min-width: 641px) {
.submit {
	display: flex;
	align-items: center;
	column-gap: 1em;
}

}


::placeholder {
	color: #cccccc;
}


/******************************
 ボタン
******************************/

.btn:hover {
	opacity: 0.7;
	filter: alpha(opacity=70);
}



/******************************
 footer
******************************/

footer {
	position:sticky;
	top:100vh;
	text-align: center;
	padding: 1em 0;
}

footer a {
	color: #595757;
	text-decoration: none;
}

p.copy {
	font-size: 0.9em;
}



/******************************
 フッター最下部表示
******************************/

html {
	height: 100%;
}
body {
	height: 100%;
}
footer {
	position: sticky;
	top: 100vh;
}