@charset "utf-8";
/* メルマガ日本語用（spiral） */

/*--------------------------------------------------
 基本設定
--------------------------------------------------*/
html {
	margin: 0;
	padding: 0;
	border-top: 4px solid #25397a;
}
html * {
	box-sizing: border-box;
}
body {
	margin: 0;
	padding: 0;
	background: #fff;
	color: 111;
	font-size: 93.75%;	/* 15px */
	font-family: "メイリオ", "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
	line-height: 1.6;
	border-top: 2px solid #3651ab;
}

a:link {
	color: #0d237d;
	text-decoration: underline;
}
a:visited {
	color: #551a8b;
	text-decoration: underline;
}
a:hover, a:focus, a:active {
	color: #aa1111;
	text-decoration: underline;
}

img { border: none; }

h1 {	/*#mainArea .h1Area内 */
	margin: 0 0 0 10px;
	padding: 16px 10px 16px 10px;
	font-size: 153.3%;	/* 23px */
	line-height: 1.3;
	border-left: 5px solid #25397a;
}
h2 {
	margin: 21px 0 0;
	padding: 0 10px 9px 3px;
	font-size: 140%;	/* 21px */
	font-weight: normal;
	line-height: 1.3;
	border-bottom: 2px solid #233875;
}
h3 {
	margin: 23px 0 0;
	padding: 0 0 0 10px;
	font-size: 120%;	/* 18px; */
	line-height: 1.3;
	border-left: 6px solid #233875;
}
h3:after {
	content: "";
	display: block;
	padding: 1px 0 0;
	border-bottom: 1px dotted #a7a7aa;
}
h4 {
	margin: 20px 0 0;
	padding: 0 0 0 10px;
	line-height: 1.4;
	font-size: 100%;	/* 15px */
}
h4:before {
	content: "■";
	color: #233875;
	font-size: 100%;
	padding: 0 6px 0 0;
}

p {
	margin: 1em 0 0;
	padding: 0;
}

ul {
	margin: 1em 0 0;
	padding: 0 0 0 25px;
	list-style-image: url("https://www.jil.go.jp/images/top_mark_02.gif");
}

dl {
	margin: 1em 0 0;
	padding: 0 0 30px;
}
dl dt {
	margin: 0;
	padding: 5px;
	float: left;
	width: 30%;
	font-weight: bold;
}
dl dd {
	margin: 0;
	padding: 5px;
	float: left;
	width: 70%;
}
dl:before, dl:after {content:"";display:table;}
dl:after {clear:both;}
dl {*zoom:1;}

/* 文字色 */
.red {
	color : #B30000;
}

form {
	margin: 1em 0 0;
	padding: 0;
}
form fieldset {
	margin: 1em 0 0;
	padding: 0;
	border: none;
}
form legend {
	margin: 1em 0;
	padding: .5em;
	background: #ebf1f6;
	font-weight: bold;
	width: 100%;
}
input, select, textarea {
	margin: 0 0 8px;
	padding: 5px;
	width: 100%;
	font-size: 108%;
	font-family: "メイリオ", "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
}
input[type="checkbox"],
input[type="radio"] {
	width: 1.2em;
	height: 1.2em;
}
select optgroup {
	background: #c1d6ef;
}
select option {
	background: #fff;
}

/*--------------------------------------------------
 ヘッダー（ロゴ）エリア設定
--------------------------------------------------*/
#headerArea {
	margin: 0;
	padding: 0;
	border-bottom: 1px solid #ccc;
	/* css3 gradation */
	background: -webkit-linear-gradient(top, rgb(255, 255, 255) 50%, rgb(240, 240, 240) 94%, rgb(225, 225, 225) 100%);
	background: -o-linear-gradient(top, rgb(255, 255, 255) 50%, rgb(240, 240, 240) 94%, rgb(225, 225, 225) 100%);
	background: -ms-linear-gradient(top, rgb(255, 255, 255) 50%, rgb(240, 240, 240) 94%, rgb(225, 225, 225) 100%);
	background: -moz-linear-gradient(top, rgb(255, 255, 255) 50%, rgb(240, 240, 240) 94%, rgb(225, 225, 225) 100%);
	background: linear-gradient(to bottom, rgb(255, 255, 255) 50%, rgb(240, 240, 240) 94%, rgb(225, 225, 225) 100%);
}
#headerArea .headerContainer {
	margin: 0 auto;
	padding: 20px;
	width: 900px;
}
#headerArea .headerContainer .skip {
	margin: 0;
	padding: 20px 0 0;
	text-align: right;
	float: right;
	width: 30%;
}
#headerArea .headerContainer .logo {
	margin: 0;
	float: left;
	width: 30%;
}
#headerArea .headerContainer .logo img {
	width: 100%;
	height: 100%;
}

/*--------------------------------------------------
 パンくずエリア設定
--------------------------------------------------*/
#breadcrumb {
	margin: 0;
	padding: 0;
	font-size: 86.7%;
}
#breadcrumb p {
	margin: 0;
	padding: 0;
	float: left;
	width: 10%;
}
#breadcrumb ol {
	margin: 0;
	padding: 0;
	list-style: none;
	float: left;
	width: 89%;
}
#breadcrumb ol li {
	margin: 0;
	padding: 0;
	display: inline;
}
#breadcrumb ol li:after {
	content: ">";
	display: inline-block;
	padding-left: 5px;
}
#breadcrumb ol li:last-child:after {
	content: "";
}

/*--------------------------------------------------
 メインエリア設定
--------------------------------------------------*/
#mainArea {
	width: 800px;
	margin: 0 auto;
	padding: 20px 0;
	background: #fff;
}

#mainArea .h1Area {
	margin: 10px 0;
	padding: 0;
	border: 1px solid #b3b3b4;
	border-radius: 4px;
}
#mainArea .h1Area .h1_text_m {
	font-size: 86.7%;
}
#mainArea .h1Area .h1_text_s {
	font-size: 72%;
}

#mainArea .h1Area p {
	margin: 0;
	padding: 2px 20px;
	font-weight: bold;
	border-bottom: 1px solid #b3b3b4;
	background: #f7f7f7;
	border-radius: 4px 4px 0 0;
}
#mainArea dd p {
	margin: 0;
}

#mainArea .note_text {
	/* 入力時の説明 p */
	margin: 10px 0 0;
	padding: 0 1em 1em;
	background: #ffffe8;
	border: 2px solid #ccc;
}
#mainArea .emsg {
	/* 入力エラー時の説明 p */
	padding: 20px 20px 20px 20px;
	border: 2px solid #b30000;
	color: #b30000;
	font-weight: bold;
}

#mainArea .need {
	/* 必須 span */
	color: #fff;
	background: #b30000;
	padding: 0 6px;
	border-radius: 14px;
	font-size: 93.3%;
	font-weight: normal;
}
#mainArea .caution {
	/* 注意事項 span */
	color: #555;
	font-size: 93.3%;
	font-weight: normal;
	display: block;
}
#mainArea .msg {
	/* エラーメッセージ(入力チェック時) span */
	display: block;
	color: #b30000;
	margin-bottom: 5px;
	font-weight: bold;
}
#mainArea .error {
	/* 入力エラー時のボックス背景色 */
	background: #f7e5e5;
}

#mainArea .sample {
	/* 例文 p or span */
	color: #555;
	font-size: 93.3%;
	line-height: 1.2;
	font-weight: normal;
}

#mainArea input.submit {
	/* 送信ボタン */
	width: 40%;
	font-size: 153.9%;
	font-weight: bold;
	text-align: center;
	cursor: pointer;
}

/* ラジオ・チェックのグループ
 よこ並びの時、horizonを併用 */
#mainArea .multi {
	margin: 0;
	padding: 0;
	list-style: none;
}
#mainArea .multi li {
	margin: 0;
	padding: 0 1em .5em 0;
}
#mainArea .multi label {
	margin: 0;
	padding: 5px 10px;
	display: block;
	background: #f1f1f1;
	border-radius: 5px;
}
#mainArea .multi label input {
	display: block;
	float: left;
}
#mainArea .multi label span {
	display: block;
	margin: 0 0 0 2em;
}
#mainArea .horizon li {
	float: left;
	min-width: 20%;
}

/* inputの幅を変更したい時 */
input.w10 {
	width: 10%;
}
input.w20 {
	width: 30%;
}
input.w30 {
	width: 30%;
}
input.w40 {
	width: 40%;
}
input.w50 {
	width: 50%;
}
input.w60 {
	width: 60%;
}
input.w70 {
	width: 70%;
}
input.w80 {
	width: 80%;
}
input.w90 {
	width: 90%;
}

/* dlリストをフロートさせない時 */
dl.nfl dt {
	float: none;
	width: 100%;
}
dl.nfl dd {
	margin: 0;
	padding: 5px;
	float: none;
	width: 100%;
}

/* スパイラルシール */
#mainArea .spiralSeal {
	margin: 20px 0 0;
	padding: 0;
}
#mainArea .spiralSeal .description {
	padding: 5px;
	float: left;
	width: 75%;
	font-size: 73.3%;
}
#mainArea .spiralSeal .img {
	padding: 5px;
	float: right;
	width: 25%;
	text-align: center;
}

/*--------------------------------------------------
 フッターエリア設定
--------------------------------------------------*/
#footerArea {
	margin: 30px 0 0;
	padding: 10px 20px;
	border-top: 1px solid #ccc;
}
#footerArea .footer_text {
	margin: 0 auto;
	padding: 0;
	width: 900px;
}
#footerArea .footer_text p {
	margin: 0 0 5px;
	font-size: 80%;
}

/*--------------------------------------------------
 clearfix
--------------------------------------------------*/
.clf:before, .clf:after {content:"";display:table;}
.clf:after {clear:both;}
.clf {*zoom:1;}


@media screen and (min-width:726px) and (max-width:981px) {
	#headerArea .headerContainer {
		margin: 0 auto;
		padding: 10px;
		width: 90%;
	}
	#headerArea .headerContainer .skip {
		width: 30%;
	}
	#headerArea .headerContainer .logo {
		width: 40%;
	}

	#mainArea {
		width: 90%;
		margin: 0 auto;
		padding: 20px 0;
		background: #fff;
	}

	#breadcrumb p {
		width: 10%;
	}
	#breadcrumb ul {
		width: 90%;
	}

	#footerArea {
		margin: 30px 0 0;
		padding: 10px;
		border-top: 1px solid #ccc;
	}
	#footerArea .footer_text {
		margin: 0 auto;
		padding: 0;
		width: 90%;
	}

	#mainArea .spiralSeal .description {
		float: none;
		width: 100%;
	}
	#mainArea .spiralSeal .img {
		float: none;
		width: 100%;
		text-align: left;
	}

}

@media screen and (max-width:725px) {
	#headerArea .headerContainer {
		margin: 0 auto;
		padding: 10px;
		width: 96%;
	}
	#headerArea .headerContainer .skip {
		display: none;
	}
	#headerArea .headerContainer .logo {
		width: 100%;
	}

	#mainArea {
		width: 96%;
		margin: 0 auto;
		padding: 20px 0;
		background: #fff;
	}

	#breadcrumb {
		display: none;
	}

	dl dt {
		float: none;
		width: 100%;
	}
	dl dd {
		margin: 0;
		padding: 5px;
		float: none;
		width: 100%;
	}

	#mainArea input.submit {
		width: 80%;
	}

	#footerArea {
		margin: 30px 0 0;
		padding: 10px;
		border-top: 1px solid #ccc;
	}
	#footerArea .footer_text {
		margin: 0 auto;
		padding: 0;
		width: 96%;
	}

	#mainArea .spiralSeal .description {
		float: none;
		width: 100%;
	}
	#mainArea .spiralSeal .img {
		float: none;
		width: 100%;
		text-align: left;
	}

}
