﻿@charset "UTF-8";
/* レイアウトＣＳＳ (181205) */


.noDisplay {
	display: none;
}

footer, footer nav {
	width: 100%;
}


h1 a,
nav a {
	text-decoration: none;
}



/*
■ レイアウト
============================================================================= */
header {
	position: relative;
	z-index: 10;
}

	header p {
		position: absolute;
		top: 0;
		right: 0;
		z-index: 0;
	}


/* ■ ナビ >> -------------------------------------------------- */
nav {
}

	nav li {
		display: inline-block;
	}

/* ■ エラーメッセージ --------------------------------------------- */
.errorMsg {
	margin-top: 5px;
	display: inline-block;
	color: #d00;
	line-height: 2rem;
	text-indent: 0.5rem;
}

.errorArea {
	color: #d00;
}



/*
■ ヘッダー
============================================================================= */
h1 {
	width: 100%;
	border-top: 6px solid #579CD3;
	border-bottom: 3px solid #579CD3;
	display: table;
}

	h1 a,
	h1 span {
		display: table-cell;
	}

	h1 a {
		color: #7DC035;
	}

	h1 span {
		vertical-align: bottom;
		text-align: right;
	}

header p {
	padding-right: 1rem;
	background: #4A5580 url(img/hd-p_bg.gif) no-repeat 0% 0%;
	color: #B6DCE9;
	text-align: right;
}



/* ■ グローバルナビ >> ----------------------------------------------------- */
#globalNavi {
	margin-top: 1px;
	border-top: 1px solid #246194;
	padding-top: 1px;
}

	#globalNavi ul {
		background: #246194;
		text-align: right;
	}

	#globalNavi li a {
		color: #fff;
		display: block;
	}

	#globalNavi li#homeGN {
		position: absolute;
		left: 0;
	}

	#globalNavi li a:active,
	#globalNavi li a:hover,
	#globalNavi li.adminLst a:active,
	#globalNavi li.adminLst a:hover,
	#globalNavi li.memberLst a:active,
	#globalNavi li.memberLst a:hover {
		background: #FA0;
	}



/*
▼ フッター
============================================================================= */
footer {
	width: 100%;
	background: #fff;
	text-align: center;
}

address dt,
address dd {
	font-size: 0.8rem;
}

#copy {
	padding-bottom: 5px;
	color: #195998;
}




/*


	/* □ フッター >> ----------------------------------------------------------- *
	footer nav {
		background: #012B80;
	}
	#controller,
	#controller li {
		position: fixed;
		right: 0;
		bottom: 56px;
		z-index: 10;
	}
	#controller li,
	footer nav,
	footer nav li,
	footer nav li a,
	#controller li a {
		margin: 0px;
		padding: 0px;

	}
	#controller li,
	#controller li a,
	footer nav {
		height: 40px;
	}
	#controller li a,
	footer nav ul {
		width:100%;
	}

	#controller li,
	footer nav li.cntctLnk {width:25%;}
	footer nav li.pagetop {width:50%;}

	footer nav a span {
		display: none;
	}
	footer nav li {
		border-right: 1px solid #FFF;
		float: left;
	}
	footer nav li.cntctLnk a {
		background-color: #012B80;
		background-image: url(img/icon_mail01.png);
	}
	footer nav li.pagetop a {
		background-color: #012B80;
		background-image: url(img/icon_top01_bl.png);
	}
	#controller li a:hover,
	#controller li a:active,
	#controller li a {
		background-color: #579cd3;
		background-image: url(img/icon_back01_bl2.png);
	}




*/



/*
■ コンテンツ
============================================================================= */
#contents {
}

.arwBtm {
	margin: 0;
	text-align: center;
	font-size: 2.5rem;
	line-height: 2rem;
	color: #579cd3;
}

#mainContents h2 {
	text-indent: 0.5rem;
	color: #579CD3;
}

#contents h3 {
	margin-bottom: 0.2rem;
	color: #246194;
}




/* ------------------------------------------------ ◆ テーブル >> */
table {
	border: 2px solid #CCC;
}

#contents table {
	width: 100%;
	border: 2px solid #CCC;
	text-align: center;
}

	#contents table th,
	#contents table td {
		border-bottom: 1px solid #CDCDCD;
		font-weight: normal;
	}

	#contents table th,
	#contents table thead td {
		white-space: nowrap;
	}

	#contents table thead th,
	#contents table thead td {
		border-bottom: 3px double #CCC;
	}

#mainContents table th,
#mainContents table thead td {
	background: #e5f5f9;
}

#mainContents table thead th,
#mainContents table thead td {
	padding: 5px 3px 3px;
	color: #012b80;
}

#mainContents table tbody th {
	padding: 0.5rem;
	background: #e5f5f9 url("img/tbl_bg01_w.gif") repeat 0 0;
	color: #2f5398;
}

#mainContents table tbody td {
	padding: 0.5rem;
	text-align: left;
}



/* ------------------------------------------------ ◆ ボタン >> */
ul.btn {
	margin: 1rem auto;
	width: auto;
	display: table;
	text-indent: 0;
}

	ul.btn li {
		text-indent: 0;
		text-align: center;
	}


/* ▼ ボタンエリア >> ------------------------------------------ */
.btnMemo {
	margin-bottom: 0.5rem;
	text-align: center;
	font-size: 1.2rem;
	color: #246194;
}





/* ------------------------------------------------ ◆ INPUT >> */
input,
select {
	margin-right: 0.5rem;
	margin-left: 0.5rem;
}

table input {
	margin: 0;
}

input[type="checkbox"] {
	margin-right: 0.8rem;
}

input[type="submit"],
input[type="button"] {
	margin: 0.5rem;
	padding: 0 1rem;
	width: auto;
	height: 3rem;
	text-indent: 0;
}

select,
input[type="text"],
input[type="password"] {
	height: 2rem;
}


	/* ▼ input text ------------ */
	input[type="text"].zip {
		margin-left: 0.5rem;
	}

input.add {
	margin-top: 0.5rem;
}







/* ---------------------------------------------------------------------------------------- ▼ スマホ用 */
@media screen and (max-width:779px) {

	header {
		position: fixed;
		top: 0;
		width: 100%;
		background: #fff;
	}

	footer nav {
		position: fixed;
		bottom: 0;
	}



	/* ▼ エラーメッセージ >> -------------------------------------- */
	.errorArea ul li {
		margin: 0 1%;
		padding: 0.3rem 0.5rem;
		border: 2px solid #d00;
	}

	/* ▼ ヘッダー >> ---------------------------------------------- */
	h1 {
		padding-top: 2vw;
		padding-bottom: 0.5vw;
	}

		h1 a {
			font-size: 1.3rem;
			line-height: 1.3rem;
			text-shadow: 1px 1px 2px #CCC;
		}

		h1 span {
			display:none;
		}

	header p {
		padding-right: 2vw;
		font-size: 2.5vw;
		line-height: 3vw;
		width: 9.5rem;
	}
	/* ▼ グローバルナビ >> ---------------------------------------- */
	#globalNavi ul,
	#globalNavi ul a {
		height: 10vw;
	}

		#globalNavi ul li {
			width: 33%;
		}

			#globalNavi ul li:nth-child(2) {
				width: 34%;
			}

		#globalNavi ul a,
		#globalNavi ul a span {
			text-align: center;
			font-size: 4vw;
			line-height: 10vw;
		}

	#globalNavi li a {
		text-indent: 0;
		border-right: 1px solid #FFF;
	}

	#globalNavi li:last-child a {
		border-right: none;
	}



	/* ▼ フッター >> ---------------------------------------------- */
	footer {
		padding-top: 0.2rem;
		padding-bottom: 2.5rem;
	}

		footer nav {
			height: 2.5rem;
			background-color: #012B80;
		}

			footer nav li {
				padding: 0;
				height: 2.5rem;
				display: block;
				float: left;
			}

				footer nav li a {
					width: 100%;
					height: 2.5rem;
					border-right: 1px solid #fff;
					background-repeat: no-repeat;
					background-position: 50% 50%;
					background-size: auto 2rem;
					display: block;
				}

					footer nav li a span, footer nav li.cntctLnk span {
						display: none;
					}

				footer nav li.cntctLnk {
					width: 25%;
				}

					footer nav li.cntctLnk a {
						background-image: url(img/icon_mail01.png);
					}

				footer nav li.pagetop {
					width: 50%;
				}

					footer nav li.pagetop a {
						background-image: url(img/icon_top01_bl.png);
					}

	address {
		color: #222;
	}

		address dt,
		address dd {
			line-height: 5.5vw;
			text-indent: 0;
		}

		address dt {
			padding: 0.2rem 0 0;
			background: #999;
			color: #fff;
			font-size: 4.5vw;
		}

		address dd:nth-child(2) {
			font-size: 3.5vw;
			color: #666;
		}

		address dd:last-child {
			padding: 0.2rem 0;
			font-size: 5vw;
			line-height: 5vw;
			color: #444;
		}

	#copy {
		padding: 0.2rem 0;
		line-height: 2.5vw;
		font-size: 2.5vw;
		background: #195998;
		color: #fff;
	}

	/* ▼ コンテンツ >> -------------------------------------------- */
	#contents {
		margin-top: 21vw;
		padding-top: 0.5rem;
	}

		/* ------------------------------------------------ ▼ テーブル >> */
		#contents table {
			margin: 1rem 0;
		}

	table th,
	table td {
		display: block;
	}

	#contents table tr:last-child td {
		border-bottom: none;
	}

	/* ------------------------------------------------ ▼ INPUT >> */
	select,
	input[type="text"],
	input[type="password"] {
		width: 90%;
		margin-left: 5%;
	}

	/* ▼ input text ------------ */
	input.zip {
		width: 5em;
	}









	/* ------------------------------------------------ ▼ ボタン >> */
	ul.btn li {
		display: block;
	}

		ul.btn li input {
			margin: 0.5rem 0 0;
			width: 98%;
		}
}
/* ▲ ------------------------------------------------------- ▲ スマホ用 END */


/* ---------------------------------------------------------------------------------------- ▽ ＰＣ用 */
@media screen and (min-width:780px) {
	#container {
		position: relative;
		min-height: 100vh;
	}

	#contents {
		position: relative;
		width: 1200px;
		margin: 0px auto;
	}

	footer {
		position: absolute;
		left: 0;
		bottom: 0;
	}



	/* ▽ エラーメッセージ >> -------------------------------------- */
	.errorArea {
		margin-left: 2em;
	}

		.errorArea ul li {
			margin-bottom: 0.3em;
			text-indent: 0;
			list-style-type: disc;
		}


	/* ▽ ヘッダー >> ---------------------------------------------- */
	header {
		width: 1200px;
		margin: 0 auto;
	}

	h1 a,
	h1 span {
		font-size: 36px;
	}

	h1 a {
		line-height: 70px;
		text-shadow: 4px 4px 6px #CCC;
	}

	h1 span {
		color: #DDD;
		font-weight: bold;
	}

	header p {
		padding-right: 1rem;
		font-size: 12px;
		width: 27rem;
	}

	/* ▽ グローバルナビ >> ---------------------------------------- */
	#globalNavi ul,
	#globalNavi ul a {
		height: 50px;
	}

		#globalNavi ul a {
			padding-right: 1rem;
			padding-left: 1rem;
			line-height: 50px;
		}

	#globalNavi li a {
		border-left: 1px solid #FFF;
	}

	#globalNavi li#homeGN {
		border-left: none;
		border-right: 1px solid #FFF;
	}

		#globalNavi li#homeGN a {
			border-left: none;
		}



	/* ▽ フッター >> ---------------------------------------------- */
	footer nav {
		padding: 3px 0;
		background: #B6DCE9;
	}

		footer nav a {
			font-size: 0.9rem;
			color: #666;
		}

		footer nav span {
			font-size: 16px;
		}

	address dl {
		margin: 0.2rem auto;
		display: table;
	}

	address dt,
	address dd {
		padding: 0 0.5rem;
		display: table-cell;
	}

	#copy {
		font-size: 12px;
	}

	/* ------------------- ▽ pagetop >> */
	.pagetop {
		display: none;
		position: fixed;
		bottom: 10px;
		right: 30px;
	}

		.pagetop a span {
			display: none;
		}

		.pagetop a {
			padding: 3px;
			display: block;
			width: 50px;
			height: 50px;
			border-radius: 10px;
			-webkit-border-radius: 10px;
			-moz-border-radius: 10px;
			border: 3px solid #FFF;
			background: #96de38 url("img/icon_top01.png") no-repeat 50% 50%;
			background-size: 50px;
		}

			.pagetop a:hover,
			.pagetop a:active {
				background-color: #579cd3;
				background-image: url("img/icon_top01_bl2.png");
			}

	/* ▽ コンテンツ >> -------------------------------------------- */
	#contents {
	}

		/* ------------------------------------------------ ▽ テーブル >> */
		#contents table {
			margin: 1rem 0;
		}

			#contents table td {
				border-left: 1px dotted #CCC;
			}

	/* ------------------------------------------------ ▽ INPUT >> */
	input[type="text"],
	input[type="password"] {
		width: 20em;
	}
	/* ▽ input text ------------ */
	input.name, input.email {
		width: 37em;
	}

	input.kana {
		width: 30em;
	}

	input.add {
		width: 30em;
	}

	input.tel {
		width: 8em;
	}

	input.shikaku, input.zip {
		width: 5em;
	}

	input.no20 {
		width: 10em;
	}

	input.no15 {
		width: 7.5em;
	}


	#mailaddress {
		ime-mode: inactive;
		width: 70%;
	}

	#content {
		ime-mode: active;
		width: 70%;
	}




	/* PW・対象者変更ボタン >> ------------------------------------- *
.pwChange,
#actChange {
	margin: 0px;
	padding: 5px 10px;
}
#memberHeader .prsnlData td:last-child {
	padding: 0px;
}
#memberHeader h2 input {
	margin-left: 20px;
	margin-right: 0px;
}
caption .btn input {
	margin-left: 20px;
	margin-bottom: 5px;
	padding: 5px 10px;
}
/* ▼ input text >> -------------------------------------------- *

.date input {
	margin: 0px;
}
.search input {
	width: 25em;
}
.search div input {
	width: auto;
}

.date input {
	margin: 0px;
}
.date input.time {
	margin-left: 0.5em;
	padding: 5px 10px;
	width: 4em;
}

.inputData select {
	margin-right: 5px;
}








	/* ------------------------------------------------ ▽ ボタン >> */
	ul.btn li {
		display: table-cell;
	}

		ul.btn li input {
			width: 12rem;
		}

	#changePW ul.btn li input {
		width: 8rem;
	}



	/* ▽ メインコンテンツ >> -------------------------------------- */
	#mainContents {
		padding-bottom: 5.5rem;
	}
}
/* △ ------------------------------------------------------- △ ＰＣ用 END */











/* ◇ ナビ --------------------------------------------------------- *
nav {}
nav a {text-decoration: none;}
nav a:hover,nav a:active {text-decoration: underline;}
nav li {display: inline;}

/* ◇ クラス ------------------------------------------------------- *


/* ▼ ページの上へ pageTop ----------------------------------------- *
.pagetop a span {
	display: none;
}

/* ▽ リスト ------------------------------------------------------- *
/* ▽ リスト matchHeight ------------------------------------------- *
.items-container {
	overflow: hidden;
}
.item {
	display: block;
	float: left;
}









/* ▼ 管理者用 ----------------------------------------------------- *
#globalNavi li.adminLst {
	background: #579CD3;
}
#globalNavi li.adminLst a {
	background: #579CD3;
}
.localPage#adminHome #globalNavi li.adminLst#topGN a,
.localPage#adminDl #globalNavi li.adminLst#dlGN a {
	background: #96D738;
font-weight: bold;
color: #337A2D;
text-shadow: 0px 1px 2px #FFF;
}
#globalNavi li#dlGN {
	width: 17em;
}




/*
▼ コンテンツ
============================================================================= *
#contents {margin-bottom: 100px;}


/* ▽ メインコンテンツ --------------------------------------------- *
#mainContents {}

section {}
article {}







/* ◆ ボタン ------------------------------------------------------- *
button {
	height: 48px;
	border-radius: 5px;			/* CSS3草案 *
	-webkit-border-radius: 5px;	/* Safari,Google Chrome用 *
	-moz-border-radius: 5px;		/* Firefox用 *
line-height: 48px;
font-weight: bold;
}




/* ログインボタン >> ------------------------------------------- *
#login input.loginBtn,
#login input.clearBtn {
	width: 40%;
}








/*
▼ フッター
============================================================================= */





/* ◆ FONT size >> --------------------------------------------- *
	h1,h1 a {
		font-size: 40px;
		line-height: 54px;
	}
	h1 span {
		font-size: 38px;
		line-height: 38px;
	}
	header p {
		font-size: 12px;
		line-height: 18px;
	}


	/* PW・対象者変更ボタン >> ------------------------------------- *
	.pwChange,
	#actChange,
	caption .btn input {
	font-size: 14px;
	}



/*
★ レイアウト
============================================================================= *
/* --------------------------------------------- ▲ 画面幅1200px以上 用 *
@media screen and (min-width:1200px) {

} /* ▲ 画面幅1200px以上 用 // ----- *

/* ----------------------------------------- ★ スマフォ以外の画面 用 *
@media screen and (min-width:481px) {
	#controller {
		position: absolute;
		right: 0px;
		top: 0px;
	}

*/


/*
} /* ★ 画面幅481px以上 用 // ----- *

/* --------------------------------------------- ■ スマホ用 *
@media screen and (max-width:480px) {
	#globalNavi li#dlGN {
		padding: 0px;
		width: 8em;
	}
} /* ■ スマホ用 // ----- *


/* --------------------------------------------- ▼ 画面幅1200px未満 用 *
@media screen and (max-width:1199px) {
#container {
	width: 100%;
}
#mainContents {
	margin-left: 1%;
	width: 98%;
}
#globalNavi,
#globalNavi ul,
#globalNavi li,
#globalNavi li a {
	height: 40px;
	line-height: 40px;
}

/* ▼ 基本登録情報入力 1200px↓ >> ------------------------------------------ *
#mainContents .nestS table.inputData {
	width: 100%;
}
#mainContents .nestS table.inputData tr {
display: inline;
}
#mainContents .nestS table.inputData th,
#mainContents .nestS table.inputData td {
	margin: 0px;
	padding: 0px;
}
#mainContents .nestS table.inputData th {
	width: 15%;
	height: 40px;
	float: left;
	clear: left;
line-height: 40px;
}
#mainContents .nestS table.inputData td {
	margin-left: 15%;
	width: 85%;
	height: 40px;
	vertical-align: middle;
	display: block;
}
#mainContents .nestS table.inputData td input,
#mainContents .nestS table.inputData td select {
	margin-top: 5px;
	height: 30px;
line-height: 30px;

}
#mainContents .nestS table.inputData td select {
	margin-left: 4px;
}
#mainContents .nestS table.inputData td .email {
	width: 98%;
}

	/* 住所部分指定 >> --------------------------------------------- *
	#mainContents .nestS table.basicData.inputData tr:nth-child(4) th:first-child,
	#mainContents .nestS table.basicData.inputData tr:nth-child(4) td:nth-child(2) {
	height: 130px;
	}

/* ▽ FONT 1200px↓ >> ----------------------------------------- *
h1,
h1 a {
	font-size: 25px;
	line-height: 25px;
	text-shadow: 1px 1px 2px #CCC;
}
h1 span {
	top: 22px;
	color: #999;
	font-size: 18px;
	line-height: 30px;
	font-weight: normal;
}





	/* ■ スマホ用 ============================================================== *
	@media screen and (max-width:480px) {
	header {
		position: fixed;
		z-index: 100;
		top: 0;
		left: 0;
		right: 0;
		background: #FFF;
	}
	#contents {
		position: absolute;
		top: 42px;
		left: 0;
		right: 0;
		padding-bottom: 120px;
	}
	h1 {
		padding: 12px 10px 5px;
	}
	h1 span {
		top: 17px;
	}
	header p {
		width: 65vw;
	}


	/* □ input text >> -------------------------------------------- *
	#mainContents .btn li input {
		padding-left: 10px;
		padding-right: 10px;
	}


	/* □ グローバルナビ >> ----------------------------------------------------- *
	#globalNavi,
	#globalNavi ul,
	#globalNavi li,
	#globalNavi li a {
		height: 8vw;
		line-height: 8vw;
	}
	#globalNavi li {
		width: 6em;
	}
	#globalNavi li#homeGN {
		width: 5em;
	}






	/* □ FONT スマホ >> ------------------------------------------- *
	h1,h1 a {
		font-size: 20px;
	}
	h1 span {
		font-size: 3.5vw;
	}
	header p {
		font-size: 2.5vw;
		line-height: 3vw;
	}
	#globalNavi li a {
		font-size: 3.5vw;
	}
	#globalNavi li a span {
		font-size: 2.8vw;
	}
	.attention2 {
		font-size: 4.5vw;
		line-height: 5vw;
	}

	/* □ 基本登録情報入力 1200px↓ >> ----------------------------- *
	#mainContents .nestS table.inputData th,
	#mainContents .nestS table.inputData td {
		width: 100%;
		border-left: none;
		float: none;
	}
	#mainContents .nestS table.inputData th{
		display: block;
		width: 100%;
		border-top: 1px solid #999;
		border-bottom: 1px dotted #999;
	}
	#mainContents .nestS table.inputData th:first-child {
		border-top: none;
	}
	#mainContents .nestS table.inputData td{
		margin-left: 0%;
		text-align:center;
	}
	/* 住所部分指定 >> --------------------------------------------- *
	#mainContents .nestS table.basicData.inputData tr:nth-child(4) th:first-child {height: 40px;}
	#mainContents .nestS table.inputData td input {
		width: 98%;
	}
	#mainContents .nestS table.inputData td input.zip {
		width: 5em;
	}

	} /* ■ 画面幅480px以下 用 // ----- *

} /* ▼ 画面幅1200px未満 用 // ----- *
