/* CSS Document */

html{
	font-size:62.5%;
	}

body{
	color:#333;
	font-size:140%;
	font-family: Verdana, "游ゴシック", YuGothic, 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'メイリオ', 'Meiryo', 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	font-weight:500;
	line-height:160%;
	}

a{
	text-decoration:none;
	transition: all 0.2s ease-out;
	}
	a i{
		display:inline-block;
		}

main{
	padding-bottom:50px;
	}
	main a{
		color:#2cac99;
		}
		main a:hover{
			text-decoration:underline;
			}

article{ }
	article header{
		margin-bottom:50px;
		}
	article div+section,
	article nav+section,
	article section+section,
	article footer{
		margin-top:50px;
		}
	article *+p{
		margin-top:1em;
		}
	article select{
		height:40px;
		}
		article select{
			padding-right:0;
			}
		article nput+input{
			margin-left:5px;
			}
	article label{
		display:block;
		}
		article label input{
			display:inline;
			width:auto !important;
			height:20px;
			padding:0;
			margin-right:0.3em;
			border:none;
			line-height:20px;
			}
	article textarea{
		min-height:150px;
		width:100%;
		padding:0.5em;
		border:1px solid #ccc;
		border-radius:2px;
		box-sizing:border-box;
		}

input{
	height:40px;
	margin:0;
	padding: 0 0.5em;
	border:1px solid #ccc;
	border-radius:2px;
	box-sizing:border-box !important;
	line-height:38px;
	}
	input[type="search"]{
		float:left;
		width:calc(100% - 45px);
		}
	input[type="search"]+input{
		width:40px;
		margin-left:5px;
		padding:0;
		background:#2cac99;
		border-color:#2cac99;
		color:#fff;
		font-size:18px;
		font-family: 'icomoon';
		text-align:center;
		}


img{
	width:100%;
	height:auto;
	}

li{
	list-style:none;
	}

#wrapper{
	width:100%;
	min-width:1020px;
	overflow:hidden;
	}

.wrap{
	clear:both;
	width:980px;
	margin-left:auto;
	margin-right: auto;
	text-align:left;
	box-sizing:border-box;
	}

#header{
	line-height:40px;
	}
	#header div{
		position:relative;
		}
	#header dl{
		position:absolute;
		top:45px;
		right:340px;
		}
	#header dt,
	#header dd{
		float:left;
		font-size:14px;
		}
		#header dd{
			width:38px;
			margin-left:5px;
			background:#fff;
			/*border:1px solid #ccc;*/
			border:1px solid #2cac99;
			border-radius:2px;
			text-align:center;
			line-height:38px;
			}
			#header dd:hover{
				cursor:pointer;
				/*
				background:#e1f2f1;
				border-color:#2cac99;
				*/
				background:#e1f2f1;
				border-color:#2cac99;
				}
		#header dd.current{
			background:#2cac99;
			border-color:#2cac99;
			color:#fff;
			}
		#header dd.small{
			font-size:12px;
			}
		#header dd.large{
			font-size:16px;
			}
	#header ul{
		float:right;
		font-size:12px;
		position:absolute;
		top:5px;
		right:0;
		}
	#header li{
		position:relative;
		float:left;
		padding-left:26px;
		}
		#header li+li{
			margin-left:20px;
			}
		#header li a{
			color:#2cac99;
			}
			#header li a:hover{
				opacity:.7;
				}
		#header li i{
			position:absolute;
			left:0;
			top:9px;
			color:#2cac99;
			font-size:22px;
			}
	/*
	#header form{
		position:absolute;
		top:45px;
		right:0;
		}
		#header form input:first-child{
			width:280px;
			}
		#header form input+input{
			margin-top:-5px;
			font-size:21px;
			}
	*/
	#header #gSearch{
		position:absolute;
		top:45px;
		right:0;
		width:295px;
		}
		#header #gSearch #gs_tti50 {
			vertical-align:top;
			line-height:0px;
			padding-top:5px;
			padding-bottom:0px;
			}
		#header #gSearch input[type="text"]{
			line-height:30px;
			height:30px !important;
			font-size:14px;
			}
		#header #gSearch input[type="image"]{
			box-sizing:content-box !important;
			padding:12px 20px 12px 20px;
			}
		#header #gSearch .gsc-input-box {
			height:40px;
			border:1px solid #ccc;
			}
		#header #gSearch .gsc-search-button {
			line-height:0px;
			}

#siteName{
	position:relative;
	float:left;
	padding-left:230px;
	height:50px;
	margin:25px 0;
	background:url(../images/logo.png) no-repeat;
	background-size:auto 100%;
	text-indent:-999px;
	overflow:hidden;
	}
	#siteName a{
		position:absolute;
		top:0;
		left:0;
		width:100%;
		height:100%;
		}
	#siteName:hover:before{
		content:"";
		position:absolute;
		left:230px;
		top:50%;
		margin-top:-5px;
		border:5px solid transparent;
		border-right-color:#d94357;
		}
	#siteName:hover:after{
		content:"トップページへ";
		display:block;
		margin:5px 0 5px 10px;
		padding:0 0.5em;
		background:#d94357;
		border-radius:2px;
		color:#fff;
		font-weight:normal;
		font-size:14px;
		line-height:40px;
		text-indent:0;
		}

#gNav{
	clear:both;
	padding:15px 0;
	background:#f3f3f3;
	font-size:1.6rem;
	font-weight:bold;
	line-height:60px;
	}
	#gNav ul{
		display:table;
		width:100%;
		height:30px;
		table-layout:fixed;
		}
	#gNav li{
		display:table-cell;
		border-right:1px solid #b5b5b5;
		}
		#gNav li:first-child{
			border-left:1px solid #b5b5b5;
			width:94px;
			}
		#gNav li:first-child{
			border-left:1px solid #b5b5b5;
			}
		#gNav li:hover a:{
			border-left:1px solid #b5b5b5;
			}
	#gNav a{
		position:relative;
		display:block;
		margin:-15px 0;
		color:#4d4d4d;
		/* fix font size change */
		font-size:16px;
		}
		#gNav a:before,
		#gNav a:after{
			content:"";
			position:absolute;
			bottom:0;
			visibility:hidden;
			z-index:1;
			}
		#gNav a:before{
			left:0;
			width:100%;
			height:5px;
			background:#2cac99;
			border-radius:2px;
			}
		#gNav a:after{
			left:50%;
			margin-left:-10px;
			border:10px solid transparent;
			border-bottom-color:#2cac99;
			}
			#gNav a:hover:before,
			#gNav a:hover:after{
				visibility:visible;
				}
			#gNav a:hover:before{
				background:#2cac99;
				}
			#gNav a:hover:after{
				border-bottom-color:#2cac99;
				}
		#gNav a i{
			color:#2cac99;
			font-size:1.2em;
			margin-right:5px;
			}
		#gNav a i{
			position:relative;
			display:inline-block;
			width:1em;
			margin-right:5px;
			/*color:#2cac99;*/
			color:#f99a5c;
			font-size:24px;
			}
			#gNav a i:before{
				position:absolute;
				left:0;
				margin-top:-70%;
				line-height:100%;
				}
		#gNav li:first-child a{
			font-size:90%;
			}

#main{ }
	#main > *{
		float:left;
		width:640px;
		margin-top:50px;
		width:calc(100% - 340px);
		}

#mainContents{ }
	#mainContents > *+*{
		margin-top:50px;
		}

#sideContents{
	float:right;
	width:300px;
	}
	#sideContents > div div:last-child{
		/*margin-top:20px;*/
		margin-top:10px;
		}
	#sideContents > div{
		position:relative;
		}
	#sideContents > div+div{
		margin-top:50px;
		}
	#sideContents li{
		float:none;
		width:100%;
		}
		#sideContents li+li{
			margin-top:15px;
			margin-left:0;
			}
	#sideContents dl{
		position:relative;
		padding:10px;
		background:#fff;
		border:1px solid #ccc;
		}
		#sideContents dl dd{
			margin-top:5px;
			/*
			font-size:90%;
			font-size:1.3rem;
			line-height:140%;
			*/
			font-size:100%;
			font-size:1.4rem;
			line-height:140%;
			}
		#sideContents dl dd+dd{
			color:#999999;
			font-size:85%;
			font-size:1.2rem;
			text-align:right;
			line-height:100%;
			}
		#sideContents dl a{
			position:absolute;
			top:0;
			left:0;
			width:100%;
			height:100%;
			text-align:left;
			text-indent:-999px;
			overflow:hidden;
			}
			#sideContents dl a:hover{
				border-color:#2cac99;
				}
	#sideContents .prBanner{ }
		#sideContents .prBanner a img{
			/* new style
			max-width:300px;
			height:auto;
			*/
			max-width:300px;
			width:auto;
			}
	#sideContents .sns{ }
		#sideContents .fb-page{ 
			height:300px;
			}
		#sideContents .sns ul{
			margin-top:20px;
			}
		#sideContents .sns a{
			display:block;
			background:#f2f2f2;
			border:1px solid #ccc;
			}
			#sideContents .sns a:hover{
				border-color:#2cac99;
				background:#e1f2f1;
				}
		#sideContents .sns a img{
			margin:-1px;
			display:block
			}

#prBanner{
	position:relative;
	}
	#prBanner li{
		float:left;
		width:32%;
		margin-left:2%;
		}
		#prBanner li:nth-child(3n+1){
			clear:both;
			margin-left:0;
			}
		#prBanner li:nth-child(n+4){
			margin-top:1.25%;
			}
		#prBanner li a{
			display:block;
			margin:-1px;
			/*border:1px solid #fff;*/
			border:none;
			text-align:center;
			}
			#prBanner li a:hover{
				/*border:1px solid #2cac99;*/
				border:none;
				opacity:.7;
				}
			#prBanner li a img{
				/*
				max-width:300px;
				*/
				max-width:250px;
				height:auto;
				}
				
.prBanner{
	position:relative;
	}
	.prBanner li{
		float:left;
		width:32%;
		margin-left:2%;
		}
		.prBanner li:nth-child(3n+1){
			clear:both;
			margin-left:0;
			}
		.prBanner li:nth-child(n+4){
			margin-top:1.25%;
			}
		.prBanner li a{
			display:block;
			margin:-1px;
			/*border:1px solid #fff;*/
			border:none;
			text-align:center;
			}
			.prBanner li a:hover{
				/*border:1px solid #2cac99;*/
				border:none;
				opacity:.7;
				}
			.prBanner li a img{
				/*
				max-width:300px;
				*/
				max-width:250px;
				height:auto;
				}

#subContents{ }
	#subContents > *+*{
		margin-top:50px;
		}
	#subContents .planTab{ }
		#subContents .planTab li{
			font-size:100%;
			font-size:1.4rem;
			}
	#subContents .bxslider{
		position:relative;
		}
		#subContents .bxslider > li{
			padding:0 10px;
			}
		#subContents .bxslider section{
			width:100% !important;
			width:100% !important;
			text-align:left;
			}
		#subContents .bx-prev{
			margin-left:-30px;
			}
		#subContents .bx-next{
			margin-right:-30px;
			}
	#subContents .themeBox {
		text-align:center;
		}

#linkBanner{
	display:none;
	}
	#linkBanner li{
		float:left;
		width:19%;
		margin-left:1.25%;
		text-align:center;
		}
		#linkBanner li:nth-child(5n+1){
			clear:both;
			margin-left:0;
			}
		#linkBanner li:nth-child(n+6){
			margin-top:1.25%;
			}
		#linkBanner li a{
			display:block;
			margin:-1px;
			/*border:1px solid #fff;*/
			border:none;
			}
			#linkBanner li a:hover{
				/*border:1px solid #2cac99;*/
				border:none;
				}
			#linkBanner li a img{
				width:auto;
				/*max-width:217px;*/
				max-width:181px;
				height:auto;
				}

#tPath{
	clear:both;
	padding:30px 0;
	color:#4d4d4d;
	font-size:90%;
	font-size:1.3rem;
	line-height:140%;
	}
	#tPath a{
		color:#2cac99;
		}
	#tPath li{
		float:left;
		}
		#tPath li+li:before{
			content:">";
			margin:0 0.5em;
			}

#footer{
	position:relative;
	padding:30px 0 0 0;
	background:#f3f3f3;
	}
	#footer:before{
		content:"";
		position:absolute;
		left:0;
		bottom:0;
		width:100%;
		height:100px;
		background:#595857;
		}

#fNav{
	display:table;
	width:100%;
	}
	#fNav div{
		display:table-cell;
		}
		#fNav div+div{
			padding-left:40px;
			}
	#fNav ul{ }
		#fNav ul+ul{
			margin-top:30px;
			}
	#fNav li{
		position:relative;
		display:block;
		margin-bottom:0.4em;
		padding:0 0 0.4em 15px;
		text-align:left;
		line-height:140%;
		}
		#fNav li a{
			color:#4d4d4d;
			}
			#fNav li a:hover{
				text-decoration:underline;
				}
		#fNav li+li{
			margin-bottom:0;
			font-size:12px;
			}
		#fNav li:first-child{
			font-weight:bold;
			border-bottom:1px solid #ccc;
			font-size:14px;
			}
	#fNav i{
		position:absolute;
		top:0.3em;
		left:0;
		color:#2cac99;
		}

#copyright{
	height:100px;
	margin-top:30px;
	padding-top:20px;
	color:#fff;
	box-sizing:border-box;
	position:relative;
	}
	#copyright h4{
		margin-bottom:5px;
		font-size:18px;
		font-weight:normal;
		}
	#copyright address{
		font-size:12px;
		font-style:normal;
		line-height:160%;
		}
		#copyright address div{
			float:left;
			margin-right:20px;
			}

#toTop{
	position:fixed;
	right:20px;
	bottom:20px;
	z-index:100;
	}
	#toTop a{
		position:relative;
		display:block;
		width:100px;
		height:100px;
		padding-top:70px;
		background:#2cac99;
		border-radius:2px;
		color:#fff;
		font-size:12px;
		text-align:center;
		box-sizing:border-box;
		}
		#toTop a:hover{
			background:#69bfb7;
			text-decoration:none;
			}
	#toTop i{
		position:absolute;
		top:15px;
		left:50%;
		margin-left:-30px;
		font-size:60px;
		}

/* 表示切替 */
#dispSwitch {
	border-top: 1px solid #CCCCCC;
	background: none repeat scroll 0 0 #f2f2f2;
	color:#2cac99;
    font-size: 400%;
    padding: 1.5em 0;
    text-align: center;
	}
#dispSp {
	cursor:pointer;
	}

.form{ }
	.form dl{
		display:table;
		width:100%;
		margin-bottom:-1px;
		border:1px solid #ccc;
		}
	.form dt,
	.form dd{
		display:table-cell;
		padding:5px;
		vertical-align:middle;
		}
	.form dt{
		position:relative;
		width:25%;
		padding:5px 10px;
		background:#f2f2f2;
		border-right:1px dotted #ccc;
		font-weight:bold;
		}
		.form dt:before{
			content:"任意";
			position:absolute;
			top:0;
			right:0;
			display:block;
			background:#ccc;
			padding:0 5px;
			color:#fff;
			font-size:1.0rem;
			font-weight:normal;
			line-height:180%;
			}
		.form dt.acids:before{
			content:"必須";
			background:#d94357;
			}
	.form dd{
		width:75%;
		}
	.form small{
		font-size:85%;
		font-size:1.2rem;
		display:block;
		}
		.form small+input{
			margin-top:5px;
			}
	.form .err{
		background-color:#ffffcc;
		}
	.form .formErr{
		background-color:#F00;
		padding:2px;
		margin-right:3px;
		font-weight:bold;
		color:#FFFFFF;
		text-align:center;
		border-radius:3px;
		-moz-border-radius:3px;
		-webkit-border-radius:3px;
		}
	.form .but{
		border:none;
		padding:1em 2em;
		display:inline-block;
		}
	.form .check{
		background:#d94357;
		color:#fff;
		}
	.form .modify{
		margin-right:5px;
		background:#f2f2f2;
		color:#666;
		}
	.form .policy{
		margin-top:20px;
		padding:10px;
		background:#f2f2f2;
		color:#000;
		font-size:110%;
		font-size:1.6rem;
		font-weight:bold;
		text-align:center;
		}
	.form .caution{
		margin-bottom:20px;
		padding:10px;
		background:#f7d9dd;
		border-radius:2px;
		}

.search{
	padding:10px;
	border:1px solid #ccc;
	border-radius:2px;
	}
	.search dt{
		font-weight:bold;
		}
	.search.keyword{
		border:none;
		padding:0;
		}
		.search .keyword h4{
			padding-bottom:10px;
			border-bottom:1px dotted #ccc;
			}
		.search .keyword dt,
		.search .keyword dd{
			padding:10px 0;
			}
		.search .keyword dt{
			float:left;
			}
		.search .keyword dd{
			border-bottom:1px dotted #ccc;
			}
			.search .keyword dd:last-child{
				border:none;
				padding-bottom:0;
				}
			.search .keyword ul{
				padding-left:7em;
				}
			.search .keyword li{
				display:inline-block;
				margin-right:-1.4em;
				font-weight:normal;
				}
				.search .keyword li:before,
				.search .keyword li:after{
					content:"｜";
					background:#fff;
					}
	.search .input{
		counter-reset: chapter;
		float:left;
		width:370px;
		width:calc(100% - 250px);
		}
		.search .input [tupe="text"]{
			width:46%;
			}
		.search .input dt{
			margin-bottom:5px;
			}
			.search .input dt:before{
				content:counter(chapter)'.';
				counter-increment: chapter;
				}
			.search .input dt span{
				display:inline-block;
				margin-left:0.5em;
				font-weight:normal;
				font-size:90%;
				font-size:1.3rem;
				}
		.search .input dd{
			padding-bottom:10px;
			}
			.search .input dd:last-child{
				padding:0;
				}
			.search .input dd+dt{
				padding-top:10px;
				border-top:1px dotted #ccc;
				}
		.search .input input{ }
			.search .input input+span{
				margin:0 0.5em;
				}
	.search .map{
		position:relative;
		float:right;
		width:233px;
		}
		.search .map dl{
			padding:2px;
			background:#2cac99;
			border-radius:2px;
			}
		.search .map dt{
			padding:5px;
			color:#fff;
			text-align:center;
			}
		.search .map li{
			position:absolute;
			z-index:1;
			}
			.search .map li:before{
				display:none;
				}
			.search .map li:nth-child(1){
				bottom:130px;
				left:100px;
				}
			.search .map li:nth-child(2){
				bottom:140px;
				left:160px;
				}
			.search .map li:nth-child(3){
				bottom:90px;
				left:110px;
				}
			.search .map li:nth-child(4){
				bottom:50px;
				left:110px;
				}
			.search .map li:nth-child(5){
				bottom:30px;
				left:50px;
				}
		.search .map a{
			display:block;
			color:#000;
			font-weight:bold;
			text-shadow:
				-1px -1px #fff,
				1px -1px #fff,
				-1px 1px #fff,
				1px 1px #fff;
			}
			.search .map a:hover{
				color:#2cac99;
				text-decoration:none;
				cursor:pointer;
				}
	.search .submit{
		clear:both;
		text-align:center;
		}
	.search .planTab{
		margin:10px 0 0 0;
		border-bottom:none;
		}
		.search .planTab li{
			font-size:inherit;
			}
	.search .content_wrap{
		padding:0 10px 10px 10px;
		border:1px solid #2cac99;
		}
		.search .content_wrap+.submit{
			margin-top:10px;
			}
	.search .option{
		clear:both;
		position:relative;
		padding-top:15px;
		text-align:center;
		}
		.search .option .archive{ }
		.search .option .subMenu{
			margin-top:5px;
			width:100%;
			text-align:left;
			}
			.search .option .subMenu input{
				height:auto;
				line-height:140%;
				margin-right:0.2em;
				}
			.search .option .subMenu h4{
				margin:10px 0;
				padding:5px;
				background:#2cac99;
				border-radius:2px;
				color:#fff;
				}
			.search .option .subMenu dl{
				clear:both;
				}
			.search .option .subMenu dl+dl{
				margin-top:10px;
				padding-top:10px;
				border-top:1px solid #ccc;
				}
			.search .option .subMenu dt{
				display:inline-block;
				margin:0 0 0.5em 0;
				padding:0;
				}
			.search .option .subMenu dd{
				margin:0;
				padding:0;
				}
			.search .option .subMenu li{
				display:inline-block;
				margin-right:1em;
				}
		.search .option .but{
			min-width:10em;
			padding:0.6em;
			margin:0 0.3em;
			}
			.search .option .but:hover{
				cursor:pointer;
				}

[class^="theme"]{ }
	[class^="theme"] section,
	[class^="theme"] div{
		position:relative;
		margin:0;
		overflow:hidden;
		line-height:140%;
		box-sizing:border-box;
		}
		[class^="theme"] section > *,
		[class^="theme"] div > *{
			box-sizing:border-box;
			}
		[class^="theme"] section > *+*,
		[class^="theme"] div > *+*{
			margin-top:10px;
			}
		[class^="theme"] section:hover h3,
		[class^="theme"] div:hover h3{
			text-decoration:underline;
			}
	[class^="theme"] a{
		position:absolute;
		top:0;
		left:0;
		width:100%;
		height:100%;
		margin:0 !important;
		text-indent:-999px;
		overflow:hidden;
		z-index:10;
		}
	[class^="theme"] h3{
		margin:0;
		/*color:#2cac99;*/
		color:#4d4d4d;
		font-size:110%;
		font-size:1.6rem;
		line-height:140%;
		}
	[class^="theme"] h4{
		font-weight:normal;
		}
	[class^="theme"] h5{
		font-weight:normal;
		}
	[class^="theme"] p{
		position:relative;
		padding-top:10px;
		color:#666666;
		/*
		font-size:90%;
		font-size:1.3rem;
		line-height:140%;
		*/
		font-size:100%;
		font-size:1.4rem;
		line-height:150%;
		}
		[class^="theme"] p:before{
			content:"";
			position:absolute;
			top:0;
			left:0;
			width:100%;
			border-top:1px dotted #ccc;
			}
	[class^="theme"] ul{
		color:#666666;
		font-size:90%;
		font-size:1.3rem;
		}
		[class^="theme"] ul li{
			display:inline-block;
			}
			[class^="theme"] ul li+li:before{
				content:"・";
				margin-left:-0.3em;
				}
	[class^="theme"] section:hover h3{
		color:#2cac99;
		transition: all 0.2s ease-out;
		text-decoration:none;
		}

.themeList{ 
	}
	.themeList.clearfix{
		position:relative;
		border-bottom:1px dotted #ccc;
		overflow:hidden;
		}
		.themeList.clearfix:before{
			content:"";
			position:absolute;
			top:0;
			left:50%;
			width:0;
			height:100%;
			border-left:1px dotted #ccc;
			}
	.themeList section{
		clear:both;
		padding-left:220px;
		padding-bottom:20px;
		border-bottom:1px solid #ccc;
		}
		.themeList section:hover{
			background-color:#fafdfd;
		}
		.themeList section,
		.themeList div:after{
			clear:both;
			content:"";
			display:block;
			}
		.themeList section+section{
			margin-top:20px;
			/*padding-top:20px;*/
			}
		.themeList section:hover figure:before{
			content:"";
			position:absolute;
			top:0;
			left:0;
			width:100%;
			height:100%;
			border:1px solid #2cac99;
			box-sizing:border-box;
			z-index:10;
			}
	.themeList div{
		position:relative;
		clear:none;
		float:left;
		width:50%;
		margin:0;
		box-sizing:border-box;
		overflow:visible;
		}
		.themeList div:nth-of-type(odd){
			clear:both;
			padding:10px 10px 10px 130px;
			}
			.themeList div:nth-of-type(odd):before{
				content:"";
				position:absolute;
				top:0;
				left:0;
				width:200%;
				height:0;
				border-top:1px dotted #ccc;
				}
		.themeList div:nth-of-type(even){
			padding:10px 0 10px 140px;
			}
		.themeList div h3{
			width:100%;
			white-space: nowrap;
			overflow: hidden;
			text-overflow: ellipsis;
			-o-text-overflow: ellipsis; /* Opera9,10対応 */
			}
		.themeList div h4{
			color:inherit;
			}
		.themeList div figure{
			width:120px;
			margin-left:-130px;
			}
	.themeList figure{
		position:relative;
		float:left;
		width:200px;
		margin:0 0 0 -220px;
		}
	.themeList span{
		display:block;
		font-style:normal;
		text-align:right;
		}
		.themeList figure+span{
			float:right;
			margin:0 0 0 01em;
			padding:0.3em 0.5em;
			background:#7aa093;
			border-radius:2px;
			color:#fff;
			font-size:85%;
			font-size:1.2rem;
			line-height:100%;
			}
		.themeList h3+span{
			margin-top:5px;
			}
	.themeList h4{
		color:#69bfb7;
		font-size:inherit;
		}
	.themeList dl{ }
	.themeList dt{
		float:left;
		}
		.themeList dt:after{
			content:"："
			}
		.themeList dt:first-child{
			margin-right:10px;
			padding:0.3em 0.5em;
			background:#7aa093;
			border-radius:2px;
			color:#fff;
			font-size:85%;
			font-size:1.2rem;
			line-height:100%;
			}
		.themeList dt:first-child:after{
			display:none;
			}
	.themeList dd{
		margin-bottom:5px;
		}
	.themeList p.noresult{
		text-align:center;
		font-size:1.6rem;
		margin:10px 0px;
		}

.themeBox{ }
	.themeBox:after{
		content:"";
		clear:both;
		display:block;
		}
	.themeBox section,
	.themeBox div{
		float:left;
		padding:10px;
		background:#fff;
		}
	.themeBox section{
		margin-left:30px;
		width:193px;
		width:calc(33.3% - 20px);
		}
		.themeBox section:nth-child(3n+1){
			clear:both;
			margin-left:0;
			}
		.themeBox section:nth-child(n+4){
			margin-top:30px;
			}
	.themeBox div{
		width:145px;
		width:calc(25% - 15px);
		margin-left:20px;
		text-align:center;
		}
		.themeBox div:nth-child(4n+1){
			clear:both;
			margin-left:0;
			}
		.themeBox div:nth-child(n+5){
			margin-top:20px;
			}
	.themeBox section a,
	.themeBox div a{
		border:1px solid #ccc;
		box-sizing:border-box;
		}
		.themeBox section a:hover,
		.themeBox div a:hover{
			border:1px solid #2cac99;
			}
	.themeBox section:hover h3,
	.themeBox div:hover h3{
		/*
		text-decoration:underline;
		*/
		}
	.themeBox li div{
		width:100%;
		margin:0;
		}
	.themeBox figure{
		margin:-10px;
		padding-bottom:20px
		}
	.themeBox h3{
		width:100%;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
		-o-text-overflow: ellipsis; /* Opera9,10対応 */
		}
		.themeBox h3+ul,
		.themeBox h3+h4{
			float:left;
			margin-bottom:5px;
			padding:0.3em 0.5em;
			background:#7aa093;
			border-radius:2px;
			color:#fff;
			font-size:85%;
			font-size:1.2rem;
			line-height:100%;
			}
		.themeBox h3+ul{
			color:#fff;
			}
			.themeBox h3+ul li+li:before{
				content:"、";
				}
		.themeBox h3+h4{
			padding:0.3em 0.5em;
			background:#7aa093;
			border-radius:2px;
			color:#fff;
			font-size:85%;
			font-size:1.2rem;
			line-height:100%;
			}
	.themeBox h4+ul,
	.themeBox ul+h4{
		clear:both;
		color:#666;
		font-size:90%;
		font-size:1.3rem;
		}
	.themeBox p{
		clear:both;
		margin:0;
		padding-top:15px;
		}
		.themeBox p:before{
			top:5px;
			}

.tel{
	margin-top:10px;
	padding:10px;
	background:rgba(235,227,203,0.5);
	border-radius:6px;
	}
	.tel dt{
		text-align:center;
		}
	.tel dd{
		text-align:right;
		padding:5px 18px 0 0;
		}
		.tel dd span{
			display:inline-block;
			}

#.formLink{
	padding:0 !important;
	border-top:1px dotted #b0aa98;
	}
	#.formLink li{
		padding:5px 0;
		border-bottom:1px dotted #b0aa98;
		}

.subject{
	margin-bottom:20px;
	padding-bottom:10px;
	border-bottom:1px solid #ccc;
	font-size:120%;
	font-size:1.8rem;
	/* fix font size change */
	font-size:18px;
	font-weight:normal;
	line-height:140%;
	}
	.subject span{
		margin-left:1em;
		font-size:85%;
		font-size:1.3rem;
		}
	.subject i{
		position:relative;
		display:inline-block;
		width:1em;
		margin-right:5px;
		/*color:#cccccc;*/
		color:#2cac99;
		font-size:32px;
		}
		.subject i:before{
			position:absolute;
			left:0;
			margin-top:-70%;
			line-height:100%;
			}

.headline{
	position:relative;
	margin-bottom:20px;
	background:#f2f2f2;
	border-radius:2px;
	padding:10px 10px 10px 15px;
	font-size:120%;
	font-size:1.8rem;
	font-weight:normal;
	line-height:140%;
	}
	.headline:before{
		content:"";
		position:absolute;
		top:50%;
		left:0;
		width:5px;
		height:20px;
		margin-top:-10px;
		background:#2cac99;
		border-radius:0 2px 2px 0;
		}

.read{
	color:#69bfb7;
	font-size:120%;
	font-size:1.8rem;
	font-weight:normal;
	line-height:140%;
	}

.title{
	font-size:120%;
	font-size:1.8rem;
	font-weight:normal;
	line-height:140%;
	}
	.title.center{
		position:relative;
		padding:0 1em;
		margin-bottom:20px;
		}
	.title.center span{
		background:#fff;
		padding:0 1em;
		}
	.title.center:before{
		content:"";
		position:absolute;
		top:50%;
		z-index:-1;
		left:0;
		width:100%;
		height:1px;
		background:#ccc;
		}

.subTitle{
	font-size:110%;
	font-size:1.6rem;
	font-weight:normal;
	line-height:140%;
	}

.pager{
	margin:20px 0;
	text-align:center;
	}

.pageNaviBox{
	margin:20px 0;
	text-align:center;
	}
	.pageNaviBox:last-child{
		margin-bottom:0;
		}
	.pageNaviBox i{
		margin:0 0.2rem;
		}
	.pageNaviBox li{
		display:inline-block;
		margin:0.2rem;
		}
	.pageNaviBox li span,
	.pageNaviBox li a{
		display:block;
		padding:0.5rem 1rem;
		text-decoration: none;
		background:#2cac99;
		/*border-radius:4px;*/
		border-radius:2px;
		color:#fff;
		}
		.pageNaviBox li a:hover{
			opacity:.7;
			}
	.pageNaviBox li span{
		color:#333;
		background:#f2f2f2;
		}
	.pageNaviBox .currentPage{
		background:#ccc;
		color:#fff;
		}

.but{
	display:block;
	padding:1em;
	/*background:#e1f2f1;*/
	/*background:#fff;*/
	background:#2cac99;
	border-radius:2px;
	border:1px solid #2cac99;
	/*color:#2cac99;*/
	color:#fff;
	font-weight:bold;
	text-align:center;
	line-height:140%;
	box-sizing:border-box;
	text-decoration:none;
	}
	.but:hover{
		/*
		background:#2cac99;
		color:#fff;
		*/
		background:#fff;
		color:#2cac99;
		text-decoration:none;
		}
	.but i{
		margin-right:0.5em;
		}
	.but.inl{
		display:inline-block;
		padding:0.8em 2em;
		line-height:140%;
		}
	.but.min{
		padding:0.6em 1em;
		line-height:140%;
		}
	.but.sm{
		}
	.but.ml{
		line-height:100%;
		font-size:1.5rem;
		}
	.but.rev{
		background:#e1f2f1;
		line-height:140%;
		}
		.but.rev:hover{
			background:#2cac99;
			color:#fff;
			}

.more{
	position:absolute;
	top:0.4em;
	right:0;
	font-size:85%;
	font-size:1.2rem;
	}
	.more a{
		position:relative;
		padding-left:1em;
		color:#333333;
		text-decoration:none;
		}
		.more a:hover{
			text-decoration:underline;
			}
	.more i{
		position:absolute;
		top:0.2em;
		left:0;
		color:#cccccc;
		}

.table{
	position:relative;
	width:100%;
	border:2px solid #ccc;
	border-radius:2px;
	padding:5px;
	border-collapse:collapse;
	}
	.table th,
	.table td{
		padding:5px 10px;
		border:1px dotted #ccc;
		vertical-align:middle;
		}
	.table th{
		background:#f2f2f2;
		text-align:center;
		}
	.table thead tr{
		background:#e1f2f1;
		font-weight:bold;
		text-align:center;
		border-bottom:1px solid #ccc;
		}
	.table tr{ }
		.table tr+tr{
			border-top:1px dotted #ccc;
			}
	.table dt,
	.table dd{
		padding:10px 1em;
		box-sizing:border-box;
		}
	.table dt{
		clear:both;
		float:left;
		width:14em;
		}
	.table dd{
		padding-left:14em;
		}
		.table dd:nth-of-type(odd){
			background:#f2f2f2;
			}

.list{
	line-height:140%;
	}
	.list > li+li{
		margin-top:5px
		}
	.list.line{ }
		.list.line > li{
			margin:0;
			padding:10px 0;
			border-bottom:1px dotted #ccc;
			box-sizing:border-box;
			}
		.list.line > li i{
			}
	.list.point{}
		.list.point > li{
			padding-left:1em;
			}
		.list.point > li:before{
			content:"●";
			float:left;
			margin-left:-1em;
			color:#2cac99;
			}
	.list.count{
		counter-reset: chapter;
		}
		.list.count > li{
			padding-left:1.5em;
			}
		.list.count > li:before{
			content:counter(chapter)".";
			counter-increment: chapter;
			float:left;
			margin-left:-1.5em;
			color:inherit;
			}
	.list > dt,
	.list > dd{
		padding:10px 0;
		}
	.list > dt{
		float:left;
		width:10em;
		margin-right:1em;
		}
	.list > dd{
		padding-left:11em;
		border-bottom:1px dotted #ccc;
		}
		.list > dd:nth-of-type(1){
			border-top:1px dotted #ccc;
			}
		.list > dt:after{
			content:"：";
			float:right;
			margin-right:-0.5em;
			}
	.list.link{ }
		.list.link > li{
			position:relative;
			}
		.list.link > li a{
			display:inline-block;
			margin-left:1.5em;
			}
		.list.link > li i{
			position:absolute;
			top:0.4em;
			left:0;
			}
			.list.link.line > li i{
				margin-top:10px;
				}
	.list.box{
		background:#f2f2f2;
		border-color:2px;
		padding:10px;
		}
		.list.line.box{
			padding:5px 10px;
			}
		.list.box > li:last-child{
			border:none;
			}

.pdf{
	background:#f2f2f2;
	border-color:2px;
	padding:10px 10px;
	font-size:85%;
	font-size:1.2rem;
	line-height:18px;
	}
	.pdf a{
		display:block;
		float:left;
		width:158px;
		height:39px;
		margin:0 10px 0 0;
		background:url(../images/GetAdobeAcrobatReader_icon.png) no-repeat;
		text-indent:-999px;
		overflow:hidden;
		}
		.pdf a:hover{
			opacity:.7;
			}

/*
.bx-wrapper{
	position:relative;
	text-align:center;
	}
	.bx-wrapper .bx-controls{
		height:0;
		text-align:center;
		}
	.bx-wrapper .bx-controls-direction{
		position:absolute;
		left:0;
		top:50%;
		width:100%;
		height:0;
		margin:auto;
		}
		.bx-wrapper .bx-controls-direction a{
			width:40px;
			height:40px;
			margin-top:-20px;
			color:#595857;
			font-size:40px;
			text-indent:0;
			text-align:center;
			z-index:1;
			}
		.bx-wrapper .bx-controls-direction a:hover{
			opacity:.7;
			text-decoration:none;
			}
	.bx-wrapper .bx-pager-item{
		display:inline-block;
		margin:0 5px;
		}
		.bx-wrapper .bx-pager-item a{
			display:block;
			width:10px;
			height:10px;
			border-radius:100%;
			background:#ccc;
			text-indent:-100px;
			overflow:hidden;
			}
		.bx-wrapper .bx-pager-item a:hover{
			background:#595857;
			}
		.bx-wrapper .bx-pager-item a.active{
			background:#2cac99;
			}
	.bx-wrapper .bx-prev{
		float:left;
		}
	.bx-wrapper .bx-next{
		float:right;
		}
	.bx-wrapper .bx-has-pager{
		margin-bottom:22px;
		}
	.bxslider li{
		position:relative;
		}
		.bxslider li span{
			position:absolute;
			left:0;
			bottom:0;
			width:100%;
			padding:10px;
			background:rgba(0,0,0,0.5);
			color:#fff;
			text-align:left;
			}
*/
.bx-wrapper{
	position:relative;
	text-align:center;
	}
	.bx-wrapper .bx-controls{
		height:0;
		text-align:center;
		}
	.bx-wrapper .bx-controls-direction{
		position:absolute;
		left:0;
		/*top:50%;*/
		top:105%;
		width:100%;
		height:0;
		margin:auto;
		}
		/*
		.bx-wrapper .bx-controls-direction a{
			width:30px;
			height:30px;
			margin-top:-15px;
			color:#595857;
			font-size:30px;
			text-indent:0;
			text-align:center;
			z-index:1;
			}
		*/
		.bx-wrapper .bx-controls-direction a{
			width:24px;
			/*height:40px;*/
			/*margin-top:-20px;*/
			height:36px;
			/*margin-top:0px;*/
			margin-top:0px;
			font-size:18px;
			color:#fff;
			/*background:#595857;*/
			background:#2cac99;
			/*line-height:40px;*/
			line-height:36px;
			}
	.bx-wrapper .bx-pager{
		padding-top:10px;
		}
	.bx-wrapper .bx-pager-item{
		display:inline-block;
		margin:0 5px;
		}
		.bx-wrapper .bx-pager-item a{
			display:block;
			width:10px;
			height:10px;
			border-radius:100%;
			background:#ccc;
			text-indent:-100px;
			overflow:hidden;
			}
		.bx-wrapper .bx-pager-item a.active{
			background:#2cac99;
			}
	.bx-wrapper .bx-prev{
		float:left;
		/*border-radius:0 2px 2px 0;*/
		border-radius:2px;
		}
	.bx-wrapper .bx-next{
		float:right;
		/*border-radius:2px 0 0 2px;*/
		border-radius:2px;
		}
	.bx-wrapper .bx-has-pager{
		/*margin-bottom:22px;*/
		margin-bottom:44px;
		}
	.bxslider li{
		position:relative;
		}
		.bxslider li span{
			position:absolute;
			left:0;
			bottom:0;
			width:100%;
			padding:10px;
			background:rgba(0,0,0,0.5);
			color:#fff;
			text-align:left;
			}
.nvs{
	margin:0 -12px;
	text-align:center;
	}
	.nvs ul{
		display:table;
		margin:0 auto -8px auto;
		border-spacing:8px;
		}
	.nvs li{
		position:relative;
		display:table-cell;
		}
		.nvs li:hover{
			cursor:pointer;
			opacity:.7;
			}
	.nvs a{ }
		.nvs a:before{
			visibility:hidden;
			content:"";
			position:absolute;
			top:0;
			left:0;
			width:100%;
			height:100%;
			border:3px solid #2cac99;
			box-sizing:border-box;
			}
			.nvs a.active:before{
				visibility:visible;
				}
	.nvs img{
		width:154px;
		}

.planTab{
	margin-bottom:20px;
	border-bottom:1px solid #2cac99;
	}
	.planTab ul{
		display:table;
		width:660px;
		width:calc(100% + 20px);
		margin:0 -10px;
		border-spacing:10px 0;
		table-layout:fixed;
		}
	.planTab li{
		float:none;
		display:table-cell;
		padding:10px 5px;
		/*background:#f2f2f2;*/
		background:#f3f3f3;
		border-radius:2px 2px 0 0;
		color:#595857;
		font-size:120%;
		font-size:1.8rem;
		line-height:140%;
		text-align:center;
		}
		.planTab li:hover{
			cursor:pointer;
			background:#e1f2f1;
			color:#2cac99;
			}
			.planTab li:hover i{
				color:#2cac99;
				}
		.planTab li.select{
			background:#2cac99;
			color:#fff;
			/*font-weight:bold;*/
			}
			.planTab li.select *{
				/*font-weight:bold;*/
				}
			.planTab li.select i{
				color:#fff;
				}
	.planTab i{
		position:relative;
		display:inline-block;
		width:1em;
		margin-right:5px;
		/*color:#cccccc;*/
		color:#f99a5c;
		font-size:32px;
		}
		.planTab i:before{
			position:absolute;
			left:0;
			margin-top:-70%;
			line-height:100%;
			}
	.planTab li h2{
		font-weight:normal;
		}
	.planTab li.select h2{
		font-weight:normal;
		}
	.content_wrap{
		margin:0;
		padding:0;
		}
	.disnon{
		display:none;
		}

[class^="icon-"]{ }
	.icon-popup{
		margin-right:0.2em;
		}
	.icon-blank{ }

.wdaySat {
	color:#00a;
	}
.wdaySun {
	color:#a00;
	}

.thumbBox{
	position:relative;
	float:none !important;
	width:100% !important;
	margin:0 !important;
	padding:70% 0 0 0 !important;
	border:none !important;
	background-repeat:no-repeat !important;
	background-position:center !important;
	background-size:cover !important;
	}
	.thumbBox:after,
	.thumbBox:before{
		display:none;
		}

ul.sns{
	display:table;
	border-spacing:10px;
	margin:5px 0px;
	}
	ul.sns li{
		display:table-cell;
		vertical-align:top;
		}
		ul.sns li.twitter{
			padding-top:2px;
			}

@media {

body{
	font-size:1.4rem;
	}

#sideContents{ }
	#sideContents dl{
		border:none;
		box-shadow:0 0 2px rgba(0,0,0,0.2);
		}
		#sideContents dl a:hover{
			box-shadow:0 0 2px rgba(44,172,153,0.5);
			}

.member{ }
	.member:before{
		position:absolute;
		content:"member";
		top:-40px;
		left:-40px;
		width:80px;
		height:80px;
		padding-top:60px;
		background:#f60;
		color:#fff;
		font-size:10px;
		text-transform:uppercase;
		font-family:"Lucida Sans Unicode", "Lucida Grande", sans-serif;
		line-height:20px;
		text-align:center;
		box-sizing:border-box;
		z-index:1;
		-moz-transform: rotate(-45deg);
		-webkit-transform: rotate(-45deg);
		-o-transform: rotate(-45deg);
		-ms-transform: rotate(-45deg);
		}

.new{ }
	.new:before{
		position:absolute;
		content:"new!";
		top:-40px;
		left:-40px;
		width:80px;
		height:80px;
		padding-top:60px;
		background:#d94357;
		color:#fff;
		font-size:13px;
		letter-spacing:0.1em;
		text-transform:uppercase;
		font-family:"Lucida Sans Unicode", "Lucida Grande", sans-serif;
		line-height:20px;
		text-align:center;
		box-sizing:border-box;
		z-index:1;
		-moz-transform: rotate(-45deg);
		-webkit-transform: rotate(-45deg);
		-o-transform: rotate(-45deg);
		-ms-transform: rotate(-45deg);
		}


}


@media (min-width:1200px) {

.wrap{
	width:1140px;
	}

#fNav{ }
	#fNav div+div{
		padding-left:50px;
		}

.themeBox{ }
	.themeBox h4+ul,
	.themeBox ul+h4{
		clear:none;
		float:right;
		}

.nvs{ }
	.nvs ul{
		margin-bottom:-12px;
		border-spacing:12px;
		}
	.nvs img{
		width:191px;
		}


}


@media (max-width:1200px) {
}


@media all and (-ms-high-contrast:none){

#sideContents{ }
	#sideContents dl{
		border:1px solid #ccc;
		box-shadow:none;
		}


}

