@charset "utf-8";

/* reset
------------------------------------------------ */
body,div,pre,p,a,img,form,fieldset,input,textarea,select,option,
dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,table,th,td,embed,object {
	margin: 0;
	padding: 0;
}
html { height: 100%; font-size: 62.5%; background: #fff; }
body {
	width: 100%;
	height: 100%;
	background: #fff;
	-webkit-text-size-adjust: 100%;
	font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", "ＭＳ Ｐゴシック", "MS P Gothic", Osaka, Arial, Helvetica, Verdana, sans-serif;
	font-size: 1rem;
	line-height: 1.6;
	color: #3e3a39;
}
input { font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", "ＭＳ Ｐゴシック", "MS P Gothic", Osaka, Arial, Helvetica, Verdana, sans-serif; }
ul,ol { list-style: none; }
      
a:link { color: #3e3a39; text-decoration: none; }
a:visited { color: #3e3a39; text-decoration: none; }
a:hover { text-decoration: none; }
.device_click a:hover,
.device_click input[type=image]:hover,
.device_click input[type=submit]:hover { opacity: .6; filter: alpha(opacity=60); }

.pc { display: block !important; }
.sp { display: none !important; }

/* space
------------------------------------------------ */
.mt5 { margin-top: 5px !important; }
.mt10 { margin-top: 10px !important; }
.mt15 { margin-top: 15px !important; }
.mt20 { margin-top: 20px !important; }
.mt25 { margin-top: 25px !important; }
.mt30 { margin-top: 30px !important; }
.mt35 { margin-top: 35px !important; }
.mt40 { margin-top: 40px !important; }
.mt45 { margin-top: 45px !important; }

/* clearfix
------------------------------------------------ */
.clearfix {
	clear: both;
}
.clearfix:before,.clearfix:after {
	content: ' ';
	display: table;
}
.clearfix:after { clear: both; }

/* container
------------------------------------------------ */
#container {
	position: relative;
}
#container * { margin: 0; padding: 0; border: none; }
#container h2 img { top: auto; }

#container .wrap {
	position: relative;
	margin: 0 auto;
	max-width: 1090px;
}

/* header
------------------------------------------------ */
#header {
	margin-bottom: 30px !important;
}

/* header_info */
#header_info {
	//position: absolute;
	top: 30px;
	left: 0;
	width: 100%;
	height: 47px;
	background: #fff;
	border-bottom: solid #8a9da8 1px;
	-webkit-transform: translate3d(0,0,0);
	transform: translate3d(0,0,0);
	z-index: 10;
}
.headerFixed #header_info { position: fixed; top: 0; }
.menuOpen #header_info { position: absolute; }

	#header_info .osaka {
		position: relative;
		float: left;
		margin: 0 auto 0 10px;
		padding-top: 10px;
		width: 135px;
		font-size: 8px;
		font-size: .8rem;
		line-height: 1;
		z-index: 2;
	}

		#header_info .osaka a { display: block; }

	#header_info .head_menu {
		width: 100%;
		z-index: 1;
	}

		#header_info .head_menu .btn {
			display: none;
			float: right;
			margin: 0 10px 0 auto;
			padding: 6px 0 4px;
			width: 35px;
		}

			#header_info .head_menu .btn a { display: block; }
				#header_info .head_menu .btn a .open { display: block; }
				#header_info .head_menu .btn a .close { display: none; }
				#header_info .head_menu .btn a.on .open { display: none; }
				#header_info .head_menu .btn a.on .close { display: block; }

		#header_info .head_menu .btn_search {
			float: right;
			margin: 6px 14px 0 0;
			width: 56px;
			font-size: 10px;
			font-size: 1rem;
			line-height: 1;
		}

			#header_info .head_menu .btn_search a { display: block; }

		#header_info .head_menu .main {
			clear: both;
			display: none;
		}

			#header_info .head_menu .main .box {
				padding: 30px 0;
			}

				#header_info .head_menu .main .box > dt {
					margin-bottom: 20px;
					text-align: center;
					font-size: 16px;
					font-size: 1.6rem;
					font-weight: bold;
					line-height: 1;
					color: #fff;
				}

				#header_info .head_menu .main .box > dd {
					margin: 0 auto;
					width: 990px;
				}

			#header_info .head_menu .main .link_cat { background: #3f6779; }
				#header_info .head_menu .main .link_cat > dd {}
					#header_info .head_menu .main .link_cat > dd dl { float: left; margin: 5px 1% 5px 0; padding: 16px 18px; width: 24%; min-height: 224px; background: #fff; -webkit-box-sizing: border-box; box-sizing: border-box; font-size: 1.3rem; line-height: 1.2; }
					@media screen and (min-width: 751px) {
						#header_info .head_menu .main .link_cat > dd dl:nth-of-type(-n+4) { margin-top: 0; }
						#header_info .head_menu .main .link_cat > dd dl:nth-of-type(4n) { margin-right: 0; }
						#header_info .head_menu .main .link_cat > dd dl:nth-of-type(4n+1) { clear: both; }
					}
						#header_info .head_menu .main .link_cat > dd dl dt { font-weight: bold; }
						#header_info .head_menu .main .link_cat > dd dl dd { margin-top: 14px; }
						@media screen and (min-width: 751px) {
							#header_info .head_menu .main .link_cat > dd dl dd { display: block !important; }
						}
							#header_info .head_menu .main .link_cat > dd dl dd ul {}
								#header_info .head_menu .main .link_cat > dd dl dd ul li { margin-top: 14px; }
								#header_info .head_menu .main .link_cat > dd dl dd ul li:first-child { margin-top: 0; }
			#header_info .head_menu .main .link_other { background: #7a899e; }
				#header_info .head_menu .main .link_other > dd {}
				@media screen and (min-width: 751px) {
					#header_info .head_menu .main .link_other > dd { display: block !important; }
				}
					#header_info .head_menu .main .link_other > dd ul {}
						#header_info .head_menu .main .link_other > dd ul li { float: left; margin: 5px 1% 5px 0; width: 24%; text-align: center; font-size: 1.3rem; line-height: 1.2; }
						@media screen and (min-width: 751px) {
							#header_info .head_menu .main .link_other > dd ul li:nth-of-type(-n+4) { margin-top: 0; }
							#header_info .head_menu .main .link_other > dd ul li:nth-of-type(4n) { margin-right: 0; }
							#header_info .head_menu .main .link_other > dd ul li:nth-of-type(4n+1) { clear: both; }
						}
							#header_info .head_menu .main .link_other > dd ul li a { display: block; padding: 14px 0; background: #fff; color: #71818c; }

	/* side_search */
	#header_info .search {
		display: none;
		position: absolute;
		top: 0;
		left: 0;
		padding: 8px;
		width: 100%;
		background: #fff;
		text-align: center;
		z-index: 2;
	}

	#header_info .search,
	#header_info .search p,
	#header_info .search input {
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-ms-box-sizing: border-box;
		-o-box-sizing: border-box;
		box-sizing: border-box;
	}

		#header_info .search p { display: inline-block; text-align: left; vertical-align: middle; }
		#header_info .search input { width: 100%; height: 100%; background: none; border: none; -webkit-appearance: none; appearance: none; -webkit-border-radius: 0; border-radius: 0; -webkit-box-shadow: none; box-shadow: none; }
		#header_info .search .keyword { width: 400px; }
			#header_info .search .keyword input { padding: 6px; width: 100%; border: solid #79889d 1px; font-size: 13px; font-size: 1.3rem; outline: none; }
		#header_info .search .btn_s2 { margin-left: 10px; width: 28px; }

/* search_overlay */
.search_overlay {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(255,255,255,0);
	z-index: 50;
}

/* header_cat */
#header_cat {
	position: relative;
	//margin-top: 47px;
	width: 100%;
	height: 35px;
	background: rgb(243,243,242);
	background: -moz-linear-gradient(top, rgba(243,243,242,1) 0%, rgba(255,255,255,1) 22%, rgba(255,255,255,1) 78%, rgba(243,243,242,1) 100%);
	background: -webkit-linear-gradient(top, rgba(243,243,242,1) 0%,rgba(255,255,255,1) 22%,rgba(255,255,255,1) 78%,rgba(243,243,242,1) 100%);
	background: linear-gradient(to bottom, rgba(243,243,242,1) 0%,rgba(255,255,255,1) 22%,rgba(255,255,255,1) 78%,rgba(243,243,242,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f3f3f2', endColorstr='#f3f3f2',GradientType=0 );
	//z-index: 10;
}
#header_cat .wrap { height: 100%; }

	#header_cat .frame {
		position: relative;
		height: 100%;
		overflow: hidden;
	}
	#header_cat .frame.drag { cursor: -webkit-grabbing; }

		#header_cat .move {
			position: absolute;
			top: 0;
			left: 0;
			height: 100%;
		}

			#header_cat .move .cat {
				position: relative;
				float: left;
				border-left: solid #f2f2f2 1px;
				font-size: 1.7rem;
				font-weight: bold;
				line-height: 31px;
			}

				#header_cat .move .cat > a {
					display: block;
					position: relative;
					padding: 0 28px;
					border-bottom: solid #000 4px;
				}

	#header_cat .snav {
		position: absolute;
		top: 35px;
		left: 0;
		width: 100%;
        z-index:10;
	}

		#header_cat .snav ul {
			display: none;
			position: absolute;
			top: 0;
			left: 0;
			padding: 30px 16px;
			width: 214px;
			background: #fff;
			-webkit-box-sizing: border-box;
			box-sizing: border-box;
			box-shadow: 1px 1px 2px rgba(0,0,0,.2);
		}

			#header_cat .snav ul li {
				margin-top: 16px;
				font-size: 1.3rem;
				line-height: 1.4;
			}
			#header_cat .snav ul li:first-child { margin-top: 0; }

				#header_cat .snav ul li a { display: inline-block; vertical-align: top; }

	#header_cat .prev,
	#header_cat .next {
		position: absolute;
		top: 10px;
		width: 10px;
		height: 15px;
		background-position: center center;
		background-repeat: no-repeat;
		background-size: 100%;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
	}
	#header_cat .prev { left: -20px; background-image: url(/osaka-blog/img/slide_prev1.png); }
	#header_cat .next { right: -20px; background-image: url(/osaka-blog/img/slide_next1.png); }

	@media screen and (max-width: 1150px) {
		#header_cat .prev,
		#header_cat .next { display: none; }
	}

/* pagetop
------------------------------------------------ */
#pagetop {
	position: fixed;
	bottom: 20px;
	right: 20px;
	display: none;
	z-index: 20;
}

	#pagetop a { display: block; }

/* footer
------------------------------------------------ */
#footer {
	position: relative;
	width: 100%;
}
footer { border-top: none; }

	#footer .links {
		position: relative;
		padding: 15px 0;
		background: #fff;
		border-top: solid #99999a 1px;
	}

		#footer .links li {
			float: left;
			width: 25%;
			font-size: 1.3rem;
			line-height: 1.4;
			color: #3e3a39;
		}

			#footer .links li a {
				display: inline-block;
				padding-left: 20px;
				background: url(/osaka-blog/img/arrow1.png) no-repeat left 5px;
				background-size: 5px;
				vertical-align: top;
				color: #3e3a39;
			}

				#footer .links li span { display: block; font-size: 1rem; }

/* responsible layout
------------------------------------------------ */
@media screen and (max-width: 1110px) {
	/* container */
	#container .wrap { padding: 0 10px; } 
}

@media screen and (max-width: 1000px) {
	/* header_info */
	#header_info {}
	#header_info .head_menu {}
	#header_info .head_menu .main {}
	#header_info .head_menu .main .box { padding: 0 10px; }
}

@media screen and (max-width: 750px) {
	/* common */
	.pc { display: none !important; }
	.sp { display: block !important; }
	.pc { display: none !important; }
	.sp { display: block !important; }
	br.sp { display: inline !important; }
	a:link,
	a:visited { text-decoration: none; }

	/* form parts */
	input[type=text],
	input[type=searrch],
	input[type=image],
	input[type=submit] { -webkit-appearance: none; appearance: none; border-radius: 0; border: none; }

	/* container */
	#container .wrap { padding: 0; } 

	/* header_info */
	#header { margin-bottom: 10px !important; }
	#header_info { top: 35px; height: 38px;position: absolute;}
	#header_info .osaka { padding-top: 5px; width: 120px; }
	#header_info .head_menu {}
	#header_info .head_menu .btn { display: block; padding: 6px 0; width: 25px; }
	#header_info .head_menu .btn_search { width: 40px; }
	#header_info .head_menu .main { position: absolute; top: 38px; left: 0; width: 100%; -webkit-box-shadow: 0 2px 3px rgba(0,0,0,.1); box-shadow: 0 2px 3px rgba(0,0,0,.1); }
	#header_info .head_menu .main .box { padding: 0; border-top: solid #e9e9ea 1px; }
	#header_info .head_menu .main .box > dt {}
	#header_info .head_menu .main .box > dd { width: auto; }
	#header_info .head_menu .main .link_cat { background: #fff; }
	#header_info .head_menu .main .link_cat > dt { display: none; }
	#header_info .head_menu .main .link_cat > dd {}
	#header_info .head_menu .main .link_cat > dd dl { float: none; margin: 0; padding: 0; width: auto; min-height: inherit; background: #fff; border-top: solid #e9e9ea 1px; font-size: 1.2rem; }
	#header_info .head_menu .main .link_cat > dd dl:first-child { border-top: none; }
	#header_info .head_menu .main .link_cat > dd dl dt { padding: 14px 16px; cursor: pointer; }
	#header_info .head_menu .main .link_cat > dd dl dd { display: none; margin-top: 0; padding: 0 30px 20px; }
	#header_info .head_menu .main .link_cat > dd dl dd ul {}
	#header_info .head_menu .main .link_cat > dd dl dd ul li { margin-top: 12px; }
	#header_info .head_menu .main .link_cat > dd dl dd ul li a { display: inline-block; vertical-align: top; color: #3e3a39; }
	#header_info .head_menu .main .link_cat > dd dl dd ul li br { display: none; }
	#header_info .head_menu .main .link_other { background: #fff; }
	#header_info .head_menu .main .link_other > dt { margin-bottom: 0; padding: 14px 16px; text-align: left; font-size: 1.2rem; color: #666; cursor: pointer; }
	#header_info .head_menu .main .link_other > dd { display: none; padding: 0 30px 20px; }
	#header_info .head_menu .main .link_other > dd ul {}
	#header_info .head_menu .main .link_other > dd ul li { float: none; margin: 12px 0 0; padding: 0; width: auto; min-height: inherit; background: #fff; text-align: left; font-size: 1.2rem; }
	#header_info .head_menu .main .link_other > dd ul li:first-child { border-top: none; }
	#header_info .head_menu .main .link_other > dd ul li a { display: inline-block; padding: 0; vertical-align: top; color: #3e3a39; }
	#header_info .search { padding: 6px 8px; }
	#header_info .search .keyword { width: 92%; }
	#header_info .search .keyword input { padding: 3px 6px; font-size: 1.6rem; }
	#header_info .search .btn_s2 { margin-left: 2%; width: 6%; }
	#header_cat { margin-top: 35px; height:unset;}
	#header_cat .move .cat { font-size: 1.2rem; line-height: 32px; }
	#header_cat .move .cat > a { padding: 0 12px; border-bottom-width: 3px; }

	/* contents */
	#contents {}
	#contents .link_style1 { margin: 10px 0; }
	#contents .link_style1 li { margin-top: 4px; font-size: 1.2rem; }

	/* pagetop */
	#pagetop { right: 10px; }

	/* footer */
	#footer .links {}
	#footer .links .wrap { padding: 0 15px; }
	#footer .links li { float: none; margin-top: 15px; width: auto; font-size: 1.2rem; }
	#footer .links li:first-child { margin-top: 0; }
	#footer .links li a { padding-left: 15px; }
	#footer .links li span { display: inline-block; vertical-align: baseline; font-size: .9rem; }
}
